首頁  >  文章  >  後端開發  >  PHP如何檢查給定物件中方法是否存在?

PHP如何檢查給定物件中方法是否存在?

藏色散人
藏色散人原創
2021-08-20 10:17:241972瀏覽

在上一篇文章《使用PHP中3個神奇常數快速取得目錄、檔案名稱與行號》中為大家介紹了3個常數來取得目前目錄、檔案名稱和行號的方法,有需要的朋友可以了解一下!

那麼本文將介紹給大家一個在PHP面試過程中非常常見的問題:

問題如題「PHP如何檢視給定物件中方法是否存在」?

給你3秒鐘能不能快速回答答案?

沒錯,就是method_exists()函數!

PHP method_exists() 函數就是用來檢查給定物件中的方法是否存在的,如果面試問到這種基礎知識,相信大家絕對能輕易拿下來!

下面要簡單介紹一下method_exists()函數的使用:

該函數的語法是method_exists(objectname, methodname);

#其中參數objectname就表示物件範例或類別名稱。

參數methodname則表示方法名稱。

註:參數 objectname 和 methodname 都是必填欄位。

使用method_exists()的範例如下:

<?php
    class Demo {
        function funcdemo(){
            echo &#39;Hello World&#39;;
        }
    }
    $demo = new Demo();
    if(method_exists($demo, funcdemo)) {
        echo &#39;方法存在于给定对象中&#39;;
    }
?>

輸出:

方法存在于给定对象中

順便介紹幾個相關的函數給大家:

function_exists() - 如果給定的函數已經定義就回傳true;

語法:function_exists(string $function_name): bool

傳回值:若 function_name 存在且的確實是函數就回傳 true ,否則回傳 false 。

is_callable() - 偵測參數是否為合法的可呼叫結構;

語法:is_callable(callable $name, bool $syntax_only = false, string &$callable_name = ?): bool

傳回值:若 name 可呼叫則傳回 true,否則傳回 false。

class_exists() - 檢查類別是否已定義;

語法:class_exists(string $class, bool $autoload = true): bool

#傳回值:如果 class 所指的類別已經定義,則此函數傳回 true,否則傳回 false。

PHP中文網路平台有非常多的影片教學資源,歡迎大家學習《PHP影片教學》!

以上是PHP如何檢查給定物件中方法是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn