是你可以在PHP 5.3或以上,你可以在這裏閱讀文檔: http://php.net/manual/en/functions.anonymous.php
它不工作,完全像JavaScript的艱難。 JavaScript是一種原型語言,php不是。
您可以在JavaScript中做到這一點:
var value = 'foo';
object.doSomething(function() {
console.log(value);
});
你可以這樣做,因爲JavaScript函數有一個參考,以它的創造者。在PHP中,你不能。價值將超出範圍。
除此之外,它的工作類似。 例如,如果您想對數組或其他結構進行動態迭代。
function iterateOverArray($array, $function) {
foreach ($array as $key => $value) {
$function($key, $value);
}
}
該函數允許您遍歷數組並指定自己的操作。例如:
$array = array('foo', 'bar', 'FOBAR');
iterateOverArray($array, function ($key, $value) {
echo $key . ' => ' . $value;
});
這對修改複雜結構非常有用。但這是我在php中使用匿名函數的唯一情況。但也許這是因爲它仍然是一種新的PHP。
它可能寫匿名fucntions檢查出這些... http://stackoverflow.com/questions/2412299/why-and-how-do-you-use-anonymous-functions-in-php – codebreaker
你怎麼能點擊一個PHP對象? – undefined
如果你的問題是關於該方法如何調用它作爲參數的函數,請參閱[變量函數]上的PHP文檔(http://php.net/manual/en/functions.variable-functions.php) – Barmar