The PHP Online Conference 2021

ReflectionClass::getTraitNames

(PHP 5 >= 5.4.0, PHP 7)

ReflectionClass::getTraitNamesВозвращает массив имён трейтов, используемых в этом классе

Описание

public ReflectionClass::getTraitNames ( void ) : array

Внимание

К настоящему времени эта функция еще не была документирована; для ознакомления доступен только список аргументов.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Возвращает массив, значениями которого являются имена трейтов. В случае возникновения ошибки возвращает NULL.

add a note add a note

User Contributed Notes 1 note

up
2
emulienfou at gmail dot com
6 years ago
This remote return only the trait names from the current class.

If your class extends another class using your trait, you can't get the names. However, you can do something like :

<?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