php call方法怎麼用

藏色散人
發布: 2023-03-04 07:02:01
原創
3637 人瀏覽過

php call方法指的是「__call()」魔術方法,是在物件中呼叫一個不可存取方法時調用,call方法的格式是「function __call(string $function_name,array $arguments){方法體}」。

php call方法怎麼用

推薦:《PHP影片教學

 __call(),在物件中呼叫一個不可存取方法時調用。

此方法有兩個參數,第一個參數 $function_name 會自動接收不存在的方法名,第二個 $arguments 則以陣列的方式接收不存在方法的多個參數。

1、 __call() 方法的格式:

function __call(string $function_name, array $arguments){    // 方法体}
登入後複製

2、 __call() 方法的作用:

為了避免當呼叫的方法不存在時產生錯誤,而意外的導致程序中止,可以使用__call() 方法來避免。

該方法在調用的方法不存在時會自動調用,程式仍會繼續執行。

請參考以下程式碼:

<?phpclass Person{                             
    function say()    {  
                              
           echo "Hello, world!<br>"; 
    }      
        
    /**
     * 声明此方法用来处理调用对象中不存在的方法
     */    function __call($funName, $arguments)    
     { 
          echo "你所调用的函数:" . $funName . "(参数:" ;  
          // 输出调用不存在的方法名
          print_r($arguments); 
          // 输出调用不存在的方法时的参数列表          
          echo ")不存在!<br>\n"; 
          // 结束换行                      
    }                                          
}
$Person = new Person();            
$Person->run("teacher"); // 调用对象中不存在的方法,则自动调用了对象中的__call()方法$Person->eat("小明", "苹果");             
$Person->say();
登入後複製

運行結果:

你所调用的函数:run(参数:Array ( [0] => teacher ) )不存在!
你所调用的函数:eat(参数:Array ( [0] => 小明 [1] => 苹果 ) )不存在!
Hello, world!
登入後複製

以上是php call方法怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!