PHP Conference Japan 2024

ReflectionClass::getTraitNames

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

ReflectionClass::getTraitNames返回此類別所使用的特性名稱陣列

說明

public ReflectionClass::getTraitNames(): 陣列

取得此類別所使用的特性名稱。

參數

此函式沒有參數。

傳回值

返回一個陣列,其中包含特性名稱作為值。

新增註記

使用者貢獻筆記 1 則筆記

emulienfou at gmail dot com
11 年前
這個遠端方法只會回傳目前類別中的 Trait 名稱。

如果你的類別繼承了另一個使用你的 Trait 的類別,你將無法取得這些名稱。 但是,你可以這樣做:

<?php
$traitsNames
= [];
$recursiveClasses = function ($class) use(&$recursiveClasses, &$traitsNames) {
if (
$class->getParentClass() != false) {
$recursiveClasses($class->getParentClass());
}
else {
$traitsNames = array_merge($traitsNames, $class->getTraitNames());
}
};
$recursiveClasses($controllerClass);
To Top