ReflectionClass::getTraitNames

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

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

Описание

public ReflectionClass::getTraitNames(): array

Получает имена трейтов, используемых в этом классе.

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

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

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

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

add a note add a note

User Contributed Notes 1 note

up
2
emulienfou at gmail dot com
10 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