php __call メソッドは、未定義のメソッドを呼び出すときに、「$foo->__call('test', array(1, "2", 3.4, true))」のような構文を使用して呼び出されます。 「$foo->test(1, "2", 3.4, true)」と同等です。
推奨: 「PHP ビデオ チュートリアル 」
php マジック メソッド __call の使用法
__call は、未定義のメソッドを呼び出すときに呼び出されます。
言い換えると、テスト メソッドが定義されていない場合、メソッド名 test が __call の最初のパラメータとして渡され、test のパラメータが __call の最初のパラメータとして配列にロードされます。 __call。2 つのパラメータが渡されます。
したがって、$foo->test(1, "2", 3.4, true) を呼び出すと、実際には $foo->__call('test', array(1, ") を呼び出すのと同じになります。 2"、3.4、真))。
__call メソッドは、クラス メソッドを呼び出すときにトリガーされます。例:
<?php class google{ public function search(){ //TODO } public function __call($method, $parameters){ //这里的method便是对应的方法,即"->"后面的字符串,$parameters是通过这个方法传过来的参数 } } $google = new google(); $keyword = 'VR'; $google->search($keyword); //当调用当前对象不存在的方法时,会转向__call $google->operate();
__call を使用すると、カプセル化を行って他のオブジェクトやメソッドを呼び出すことができます。
以上がphpの__callメソッドの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。