眾所皆知的在類別外呼叫的方法假如是private或者是protected會出現如下錯誤訊息

Fatal error: Call to private method home::xxx() from context

 那要怎麼樣避免錯誤訊息出現呢??可以使用is_callable()函數來判斷方法是否可使用。


 <?php
     class test{
         //公開方法 a
         public function a(){
             echo 'hello';
         }
         //私有方法 b
         private function b(){
             echo 'bye';
         }
     }
     //物件化
     $obj=new test();
     //判斷test類別的a方法是否可使用 
     if (is_callable(array('test','a'))){ 
          $obj->a();
     }
     //判斷test類別的b方法是否可使用 
     if (is_callable(array('test','b'))){ 
          $obj->b();
     }
     
     //此範例會只執行test類別的方法a
     
 ?>

函數說明:

is_callable(array('類別名稱','方法名稱'));



如本篇文章對您有幫助的話,請按讚粉絲團或訂閱youtube頻道。

facebook粉絲團:https://www.facebook.com/aidectw/

youtube頻道:https://www.youtube.com/channel/UClGTLsGrMvGOl3tXoDQHQjg

如有任何問題,可到下方留言或到粉絲團與大家一起討論。


文章轉載或引用,請先告知並保留原文出處與連結!!3Q

原文連結:https://blog.aidec.tw/post/php-check-object-method-is-callable