【发布时间】:2012-06-22 00:21:25
【问题描述】:
试图弄清楚为什么 php 匿名函数只有在函数头中给出参数时才起作用。
例如
$f = function(){
echo "hello world";
};
$f;
$f();
行不通。但是
$f = function($argument){
echo $argument;
}
$f('hello world');
工作得很好。
为什么它需要参数,有什么解决方法吗?
编辑
这一定是版本问题。我在 5.3.18 上,我的第一个例子肯定行不通。对于那些不相信的人,它会抛出:
Parse error: syntax error, unexpected T_FUNCTION in index.php(192) :
eval()'d code on line 1
编辑
看了 DaveRandom 的回答后,我又回到不知道发生了什么的状态。也就是说,如果他们是正确的,它可以在 5.3.10 中工作......
【问题讨论】: