외부 변수를 익명 함수 매개변수에 통합
프로그래밍에서는 함수 범위 외부에 정의된 변수에 액세스해야 하는 경우가 많습니다. 익명 함수를 매개변수로 활용하는 경우 이 작업이 어려울 수 있습니다.
다음 시나리오를 고려해 보겠습니다. fetch() 함수는 데이터베이스 행을 처리하고 이를 익명 함수에 매개변수로 전달하는 데 사용됩니다. $r['title']을 사용하여 각 행에 액세스할 수 있지만 이러한 제목을 변수로 연결해야 한다는 요구 사항이 발생합니다.
전역 수정자를 사용할 수 있지만 이는 우아한 솔루션은 아닙니다. 더 적절한 접근 방식은 다음 코드에 설명된 것처럼 use 키워드를 사용하는 것입니다.
$result = ''; fetch("SELECT title FROM tbl", function($r) use (&$result) { $result .= $r['title']; });
use 키워드는 외부 변수 결과를 참조(&$result)로 캡처하여 익명 함수 내에서 사용할 수 있도록 합니다. .
그러나 use() 매개변수는 초기 바인딩을 나타냅니다. 이는 호출 시점(후기 바인딩)이 아닌 람다 함수 선언 시점에서 변수 값을 사용한다는 의미입니다.
위 내용은 PHP의 익명 함수 매개변수 내에서 외부 변수에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!