1

グループの何人かの友人とクロージャについて話しています (PHP 5.3 から)。

を実行するとvar_dump(function(){});、結果はobject(Closure). 人々の 1 人が言った: しかし、クロージャはオブジェクトではありません。

Anonymous Function が Closure クラスを実装する場合、結果は Object である必要があることを理解しています。

無名関数はオブジェクトですか?

更新 「匿名関数は Closure クラスを使用して実装されています」を読みました。(http://php.net/manual/en/functions.anonymous.php)、これはオブジェクトだと思います。

4

2 に答える 2

2

マニュアルで強く表現されている:

PHP 5.3で実装された無名関数は、このタイプのオブジェクトを生成します[クロージャ]。この事実は、以前は実装の詳細と見なされていましたが、現在は信頼できます。

http://www.php.net/manual/en/class.closure.php

明確にするために、答えは次のとおりです。はい、それらはオブジェクトです。

于 2012-07-14T20:57:58.363 に答える
0

あなたがやろうとしていることについて詳しく説明できますか?PHPではClosurefinal classですので、技術的にはそうです、それはオブジェクトです。

于 2012-07-14T20:58:22.470 に答える