php "__call()" 매직 메소드는 존재하지 않거나 액세스할 수 없는 메소드를 호출할 때 호출됩니다. 이 메소드의 기능은 프로그램이 계속 실행되도록 하고 호출된 메소드가 없거나 존재하지 않을 때 발생하는 오류를 방지하는 것입니다. 접근 불가.
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터
객체 지향 프로그래밍에서 PHP는 프로그래밍에 많은 편의를 제공하는 일련의 매직 메소드를 제공합니다. PHP에서 역할은 매우 중요합니다. PHP의 매직 메소드는 일반적으로 __(두 개의 밑줄)로 시작하며 명시적으로 호출할 필요는 없지만 특정 조건에서 자동으로 호출됩니다.
그 중 __call() 또는 __callStatic() 메서드는 오버로딩을 달성하도록 설계되었습니다. __call 메서드를 소개하겠습니다.
php __call 매직 메소드
__call() 메소드는 클래스에 접근할 수 없거나 존재하지 않는 메소드가 호출될 때 호출됩니다. 이 메소드의 구문 형식은 다음과 같습니다.
public function __call($name, $arguments){ ... ... ; }
여기서 $name은 호출할 메소드의 이름이고 $arguments는 $name에 전달된 매개변수 배열입니다.
호출된 메소드가 존재하지 않으면 __call() 메소드가 자동으로 호출되어 프로그램이 계속 실행되므로 호출 메소드가 존재하지 않을 때 오류로 인한 프로그램 종료를 방지할 수 있습니다.
【예제】 다음은 __call() 메서드의 사용법을 보여주기 위해 간단한 예를 사용합니다.
<?php header("Content-type:text/html;charset=utf-8"); class Website{ public function say(){ echo 'Welcome PHP中文网!<br>'; } public function __call($name, $arguments){ echo '你所调用的方法:'.$name; if(!empty($arguments)){ echo '【以及参数:'; print_r($arguments); echo '】'; } echo ' 不存在!<br>'; } } $obj = new Website(); $obj -> say(); $obj -> url('https://www.php.cn/'); $obj -> title(); ?>
실행 결과는 다음과 같습니다.
추천 학습: "PHP Video Tutorial"
위 내용은 PHP 호출 매직 메소드의 기능은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!