2017-02-15 6 views
3

PHP 5.6、Apache 2.4 | Windows 7、OpenServer
PHP静的匿名呼び出しが機能しない

(static function() { 
    return true; 
})(); 

これはなぜ構文エラーをスローするのですか?

syntax error, unexpected '(' 

しかしhttp://php.net/manual/en/functions.anonymous.php
PS:また - >コールが...あまりにも動作しません(予期しない ' - >')

これはPHP 5.xのでは動作しません
+0

[単一のステートメントでの匿名関数の作成と呼び出し]の可能な複製(http://stackoverflow.com/questions/3605595/creating-and-invoking-an-anonymous-function-in-a-single-statement) ) –

答えて

2

は、ここで問題です。それは働いていない静的な部分ではありません。

$f = static function() { return true; }; $f(); //Works in PHP 5.4+ 

それは動作しないことを宣言し、呼び出します:

(static function() { return true; })(); //Works in PHP 7+ 

問題は、ドキュメントが最初の構文は、PHPで有効であることを言っているである5.4+ PHP 7以上で動作する必要があるサンプルを使用しています。

関連する問題