php "__call()" マジック メソッドは、存在しない、またはアクセスできないメソッドを呼び出すときに呼び出されます。その機能は、プログラムの実行を継続できるようにし、呼び出されたメソッドが存在しない場合や、呼び出されたメソッドが存在しない場合やアクセスできない場合を回避することです。エラーが発生してプログラムが終了します。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
オブジェクト指向プログラミングでは、PHP が提供します。一連のマジック メソッド。これらのマジック メソッドはプログラミングに非常に便利であり、PHP におけるその役割は非常に重要です。 PHP のマジック メソッドは通常、__ (2 つのアンダースコア) で始まり、明示的に呼び出す必要はありませんが、特定の条件下で自動的に呼び出されます。
このうち、__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 ビデオ チュートリアル 」
以上がPHP呼び出しマジックメソッドの機能は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。