나는 PHP에서 익명의 함수를 가지고 놀았고 그것들이 그들 외부의 변수에 도달하지 않는 것 같다는 것을 깨달았습니다. 이 문제를 해결할 방법이 있습니까?
예:
$variable = "nothing";
functionName($someArgument, function() {
$variable = "something";
});
echo $variable; //output: "nothing"
이것은 “nothing”을 출력 할 것입니다. 익명 함수가 액세스 할 수있는 방법이 $variable
있습니까?
답변
예, 클로저를 사용합니다 .
functionName($someArgument, function() use(&$variable) {
$variable = "something";
});
$variable
익명 함수의 범위 밖에서 수정 된 값 을 수정 하고 검색 할 수 있으 려면를 사용하여 클로저에서 참조되어야합니다 &
.