首頁  >  文章  >  後端開發  >  php怎麼取得目前類別的方法(兩種方式)

php怎麼取得目前類別的方法(兩種方式)

PHPz
PHPz原創
2023-04-12 09:20:001384瀏覽

對於PHP開發者而言,取得目前類別的方法是一項非常基礎但又重要的操作。在PHP中,如果我們需要取得目前類別的方法,可以採用以下兩種方式來實作。

方法一:使用__METHOD__魔術常數

__METHOD__是PHP中的一個魔術常數,它可以傳回目前執行方法的名字。因此,我們可以透過使用它來獲取當前類別的方法。以下是一個範例程式碼:

class Person {
    public function getName() {
        echo __METHOD__;
    }
}

$p = new Person();
$p->getName(); //输出Person::getName

在上面的範例中,我們建立了一個Person類,並實例化了它。然後,我們呼叫了Person類別的getName方法,並在方法中輸出了__METHOD__常數的值。

當我們呼叫getName方法時,__METHOD__常數會傳回"Person::getName",這正是我們需要的目前方法的名字。

方法二:使用get_class_methods函數

另一種取得目前類別方法的方法是使用PHP內建函數get_class_methods。這個函數可以傳回一個類別中的所有公共方法的數組,而這個數組中鍵名是方法名,值是一個引用當前類別實例的可呼叫物件。

以下是一個範例程式碼:

class Person {
    public function getName() {
        echo "My name is Joe";
    }
}

$p = new Person();
$methods = get_class_methods($p);
var_dump($methods);

在上面的範例中,我們建立了一個Person類,並實例化了它。然後,我們使用get_class_methods函數取得了Person類別中的所有方法,並將其輸出到控制台。

當我們執行上面的程式碼時,將會輸出get_class_methods函數的回傳結果,也就是類別中所有公共方法的數組,如下所示:

array(1) {
  [0]=>
  string(7) "getName"
}

在這個數組中,鍵名為方法名稱"getName",值是一個目前類別實例的可呼叫物件。

總結

以上就是兩種PHP取得目前類別的方法的方式。我們可以選擇使用__METHOD__魔術常數或內建函數get_class_methods來取得目前類別的所有方法。對於初學者而言,建議使用__METHOD__魔術常數來取得目前類別的方法,因為它更為簡單易懂。而對於有一定經驗的PHP開發者來說,get_class_methods函數會更常見、更實用。

以上是php怎麼取得目前類別的方法(兩種方式)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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