PHP のクロージャを理解する: 「使用」識別子の詳細を調べる
PHP 5.3.0 の機能を調べると、次のような機能を利用した興味深いコードに遭遇するかもしれません。匿名関数と「使用」識別子。この記事は、クロージャの概念を詳しく掘り下げ、「use」キーワードの目的と使用法を明らかにすることを目的としています。
クロージャとは何ですか?
クロージャは本質的に変数に代入できる無名関数です。これにより、他の変数と同様に関数を渡すことができます。ただし、クロージャには独特の特性があります。クロージャは、プログラムの他の部分とは別の名前空間に存在します。
「use」キーワードの役割
を使用する場合クロージャでは、多くの場合、名前空間の外で定義された変数にアクセスする必要があります。ここで「use」キーワードが登場します。 「use」を使用すると、クロージャで使用する外部変数を明示的に宣言できます。
「use」キーワードは早期バインディングで動作します。これは、指定された変数の値が定義時にクロージャにコピーされることを意味します。したがって、元の変数を外部から変更しても、クロージャ内の値には影響しません。
ポインタ変数に "use" を使用する
ただし、この動作は克服できます。変数をポインターとして渡すことによって。 "&$total" のような場合、クロージャー内の変数に加えられた変更は、その名前空間の外部に反映されます。
クロージャーの利点
クロージャーにはいくつかの利点があります。 :
いつ行うかクロージャを使用する
クロージャは強力なツールですが、その使用法は次のとおりです。慎重に検討します。これらは、次のような状況に適しています。
追加リソース
PHP クロージャの詳細な説明については、[PHP マニュアル](https://php.net/manual/en/ language.functions.anonymous.php) または[クロージャに関する RFC](https://wiki.php.net/rfc/closures).
以上がPHP クロージャは「use」キーワードを使用して外部変数にアクセスする方法を教えてください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。