>백엔드 개발 >PHP 튜토리얼 >PHP에서 콜백을 어떻게 구현합니까?

PHP에서 콜백을 어떻게 구현합니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-28 01:37:02753검색

How do you Implement Callbacks in PHP?

PHP의 콜백 구현

PHP에서 콜백("콜러블" 값이라고도 함)은 함수 또는 클래스 메서드 참조를 활성화합니다. 향후 호출을 위해. 이는 함수형 프로그래밍의 기본 개념으로 사용되며 PHP 4부터 지원되었습니다.

콜백 구문

콜백은 다양한 형식으로 표현될 수 있습니다.

  • 문자열: 콜백 값은 함수 이름을 나타내는 문자열입니다.
  • 배열: 클래스 이름과 정적 메서드 이름을 지정하는 배열입니다.
  • 객체 및 메소드: 객체 인스턴스와 메소드 이름을 포함하는 배열.
  • 호출 가능 문자열: 클래스 이름 뒤에 오는 문자열을 나타내는 문자열 PHP 5.2.3 구문을 사용하는 메서드 이름(단, 이 구문은 직접 호출할 수 없습니다.)

콜백 호출

콜백은 다음을 사용하여 안전하게 호출할 수 있습니다. is_callable() 함수를 사용하여 유효성을 확인합니다. 콜백이 호출 가능한 경우 다음을 사용하여 호출할 수 있습니다.

<code class="php">$returnValue = call_user_func($cb2, $arg1, $arg2);</code>

직접 호출

최신 PHP 버전은 처음 세 가지 콜백 형식(문자열, 배열)을 직접 호출하는 것을 지원합니다. , 메소드가 있는 객체). call_user_func 및 call_user_func_array를 사용하여 모든 콜백 형식을 호출할 수도 있습니다.

추가 참고 사항

  • 네임스페이스 함수/클래스에는 콜백 문자열에 정규화된 이름이 필요합니다.
  • call_user_func는 참조로 객체가 아닌 전달을 지원하지 않습니다.
  • __invoke() 메서드가 있는 객체를 콜백으로 사용할 수 있습니다.
  • create_function()은 더 이상 사용되지 않으며 익명함수로 대체해야 합니다.

위 내용은 PHP에서 콜백을 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.