> 백엔드 개발 > PHP 튜토리얼 > php_php에서 call_user_func 함수 사용 시 주의사항 팁

php_php에서 call_user_func 함수 사용 시 주의사항 팁

WBOY
풀어 주다: 2016-05-16 20:30:51
원래의
1052명이 탐색했습니다.

이 글의 예시에서는 PHP에서 call_user_func 함수를 사용할 때 주의사항을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

call_user_func 함수에 대한 주의 사항: 구문 분석 오류: 구문 오류, 예상치 못한 t_list, t_string이 예상됩니다. 오늘 이 함수를 사용할 때 위의 문제가 계속 발생했습니다. 공식 매뉴얼을 참조하면 사용 시 주의 사항에 대한 소개가 없습니다. 입니다.

첨부 파일: 혼합 call_user_func(callback $function [, Mixed $parameter [, Mixed $... ]]) array(), echo와 같은 언어 구조를 제외한 모든 내장 함수 또는 사용자 정의 함수를 전달할 수 있습니다. () ,empty(),eval(),exit(),isset(),list(),print() 및 unset().

제 문제는 객체에 list라는 메소드 이름이 있어서 PHP 튜토리얼의 list() 언어 구조와 충돌한다는 것입니다.

예제 응용 프로그램을 살펴보세요. call_user_func 함수는 함수를 호출하는 특별한 방법과 유사합니다. 사용 방법은 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.
function a($b,$c)
{ 
에코 $b; 에코 $c; } 
call_user_func('a', "111","222")
call_user_func('a', "333","444")
//표시 111 222 333 444

클래스 내부에서 메소드를 호출하는 것이 이상합니다. 개발자가 어떻게 생각했는지는 모르겠습니다. 코드도 매우 혁신적입니다.


코드 복사 코드는 다음과 같습니다.class a {  함수 b($c)
{ 
에코 $c; } 

call_user_func(array("a", "b"),"111")
//111번 표시

call_user_func_array 함수는 매개변수의 구조를 더 명확하게 하기 위해 매개변수가 다른 방식으로 전달된다는 점을 제외하면 call_user_func와 매우 유사합니다.



코드 복사 call_user_func_array('a', array("111", "222"))
//111 222 표시


이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿