[php] 익명 함수의 PHP 변수

나는 PHP에서 익명의 함수를 가지고 놀았고 그것들이 그들 외부의 변수에 도달하지 않는 것 같다는 것을 깨달았습니다. 이 문제를 해결할 방법이 있습니까?

예:

$variable = "nothing";

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

echo $variable;  //output: "nothing"

이것은 “nothing”을 출력 할 것입니다. 익명 함수가 액세스 할 수있는 방법이 $variable있습니까?



답변

예, 클로저를 사용합니다 .

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

$variable익명 함수의 범위 밖에서 수정 된 값 을 수정 하고 검색 할 수 있으 려면를 사용하여 클로저에서 참조되어야합니다 &.


답변