PHP 5.6,Apache 2.4 | Windows 7,OpenServer
(static function () {
return true;
})();
为什么这会引发语法错误?
syntax error, unexpected '('
但是http://php.net/manual/en/functions.anonymous.php
PS:而且->呼叫也不起作用…(意外的’->’)
解决方法:
这是问题所在.不是静态部分不起作用:
$f = static function () { return true; }; $f(); //Works in PHP 5.4+
声明和调用不起作用:
(static function () { return true; })(); //Works in PHP 7+
问题在于文档说第一种语法在PHP 5.4中有效,但是使用了要求PHP 7正常工作的示例.