查詢

class_uses()函式—用法及示例

「 返回一個陣列,包含一個類使用的所有 trait 」


函式名稱:class_uses()

適用版本:PHP 5 >= 5.4.0, PHP 7

函式描述:class_uses() 函式返回一個陣列,包含一個類使用的所有 trait。

用法示例:

trait TraitA {
    public function methodA() {
        echo "TraitA's methodA";
    }
}

trait TraitB {
    public function methodB() {
        echo "TraitB's methodB";
    }
}

class MyClass {
    use TraitA, TraitB;
}

$traits = class_uses('MyClass');
print_r($traits);

輸出:

Array
(
    [TraitA] => TraitA
    [TraitB] => TraitB
)

解釋:在上面的示例中,我們定義了兩個 traits(TraitA 和 TraitB)並將它們應用到了 MyClass 類中。然後,透過呼叫 class_uses() 函式並將 MyClass 類名作為引數,我們得到了一個包含所使用的所有 trait 的陣列。該陣列的鍵是 trait 的名稱,值是 trait 的完全限定名稱。在本例中,陣列中的鍵值對為 [TraitA] => TraitA 和 [TraitB] => TraitB。這意味著 MyClass 類使用了 TraitA 和 TraitB。

注意事項:

  • class_uses() 函式只能用於類,無法用於介面或 traits。
  • 如果類沒有使用任何 trait,則 class_uses() 函式將返回一個空陣列。
  • class_uses() 函式不會遞迴地返回 trait 的父 trait,只會返回直接使用的 trait。
  • 該函式返回的陣列中,trait 的順序與其在類中使用的順序相同。
補充糾錯
上一個函式: class_parents()函式
下一個函式: clearstatcache()函式
熱門PHP函式
分享連結