编程语言
首页 > 编程语言> > PHP静态匿名调用不起​​作用

PHP静态匿名调用不起​​作用

作者:互联网

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正常工作的示例.

标签:anonymous,static,php,lambda
来源: https://codeday.me/bug/20191111/2021810.html