>백엔드 개발 >PHP 튜토리얼 >PHP 익명 함수 사용

PHP 익명 함수 사용

王林
王林앞으로
2020-01-23 18:26:433487검색

PHP 익명 함수 사용

익명 함수의 도입

익명 함수가 등장하기 전에는 모든 함수를 사용하기 전에 이름을 지정해야 했습니다.

PHP 익명 함수 사용

이 경우 함수는 한 번만 사용해야 할 수도 있습니다. , 익명 함수를 사용하면 코드가 더 간결하고 직관적이 되며, 다른 곳에서 함수가 사용되는 것을 피할 수 있습니다

PHP 익명 함수 사용

(무료 학습 비디오 튜토리얼 공유: php 비디오 튜토리얼)

익명 함수의 정의 및 사용

PHP는 클로저와 익명을 결합합니다. 함수는 동등한 개념(이 문서에서는 익명 함수로 통칭)으로 간주되며 본질적으로 함수로 위장한 객체입니다.

익명 함수의 본질은 객체이므로 객체와 마찬가지로 익명 함수도 변수에 할당될 수 있습니다.

PHP 익명 함수 사용

모든 익명 함수는 클로저 객체의 인스턴스입니다.

PHP 익명 함수 사용

객체에는 상위 범위 언어가 없습니다. , 따라서 사용된 변수를 수동으로 선언하려면 use를 사용해야 합니다

PHP 익명 함수 사용

익명 함수의 변수를 적용하려면 참조를 사용하여 값을 전달해야 합니다

PHP 익명 함수 사용

PHP 5.4부터, 클래스에서 익명 함수를 사용할 때 익명 함수의 $this는 현재 클래스에 자동으로 바인딩됩니다

PHP 익명 함수 사용

자동 바인딩을 적용하지 않으려면 정적 익명 함수를 사용할 수 있습니다

PHP 익명 함수 사용

익명 함수의 본질

익명 함수의 본질은 다음 5가지 방법을 포함하는 Closure 객체입니다.

PHP 익명 함수 사용

__construct - 익명 함수가 인스턴스화되는 것을 방지

PHP 익명 함수 사용

Closure:: 바인딩To - 현재 익명 함수 개체를 복사하고 지정된 $this 개체와 클래스 범위를 바인딩합니다. 일반인의 관점에서 이는 익명 함수를 지정된 개체에 수동으로 바인딩하는 것을 의미합니다. 이를 사용하면 개체의 기능을 확장할 수 있습니다.

PHP 익명 함수 사용

Closure::bind - 두 가지 용도로 사용되는bindTo 메소드의 정적 버전:

사용법 1:bindTo 메소드와 동일한 효과 달성

PHP 익명 함수 사용

사용법 2: 익명 함수를 클래스와 연결(대신) ) 바인딩하려면 두 번째 매개변수를 null

PHP 익명 함수 사용

call로 설정해야 합니다. PHP 7의 새로운 호출 메서드는 간단한 구문 외에도 성능도 더 높습니다

PHP 익명 함수 사용

fromCallable - 주어진 호출 가능 함수를 익명 함수로 변환합니다.

PHP 익명 함수 사용

fromCallable은

PHP 익명 함수 사용

여기서 한 가지 주목해야 할 점은 바인딩 클로저를 사용할 때 fromCallable로 변환된 클로저인지 아니면 리플렉션 클로저를 사용하여 얻은 클로저인지입니다. 두 번째 매개변수는 바인딩 클래스를 지정하며, 오류가 보고됩니다

PHP 익명 함수 사용

추천 관련 기사 및 튜토리얼: php 튜토리얼

위 내용은 PHP 익명 함수 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제