ホームページ >バックエンド開発 >PHPチュートリアル >匿名関数内の外部変数にアクセスして変更するにはどうすればよいですか?
外部変数をパラメータとして匿名関数に渡す
プログラミングの領域では、匿名関数は、形式的なロジックを必要とせずにロジックをカプセル化する便利な方法を提供します。関数宣言。ただし、このような匿名関数内で外部変数にアクセスすると、問題が発生する可能性があります。
「use」を使用して変数をキャプチャする
匿名関数内で外部変数にアクセスするには、「 use"キーワードを使用することができます。このキーワードは、外部変数を匿名関数にバインドし、その操作と変更を可能にします。
例
次のシナリオを考えてみましょう:
$result = ''; fetch("SELECT title FROM tbl", function($r) use (&$result) { $result .= $r['title']; });
ここでは、外部変数「$result」を無名関数にバインドするために「use」キーワードが使用されています。これにより、関数はそのスコープ内で "$result" の値にアクセスして変更できるようになります。
"use" の利点
変数をキャプチャするために "use" を使用すると、次のようなメリットが得られます。いくつかの利点:
「use」の制限事項"
ただし、「use」変数は呼び出し時ではなく宣言時にバインドされることに注意することが重要です。これは、匿名関数の外部で変数に加えられた変更は関数内には反映されないことを意味します。
以上が匿名関数内の外部変数にアクセスして変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。