1. ホーム
  2. php

[解決済み] 無名関数におけるPHP変数

2022-06-23 13:32:49

質問

PHP の無名関数で遊んでいて、無名関数の外側の変数に到達しないことに気づきました。 この問題を回避する方法はあるのでしょうか?

例を挙げます。

$variable = "nothing";

functionName($someArgument, function() {
  $variable = "something";
});

echo $variable;  //output: "nothing"

この場合、"not"が出力されます。匿名関数が $variable ?

どのように解決するのですか?

はい。 はクロージャを使用します。 :

functionName($someArgument, function() use(&$variable) {
  $variable = "something";
});

を変更することができるようにするために、注意してください。 $variable を修正し、無名関数のスコープ外で修正された値を取得できるようにするには、クロージャの中で & .