ReflectionClass::getTraitNames

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

ReflectionClass::getTraitNamesReturns an array of names of traits used by this class

Beschreibung

public ReflectionClass::getTraitNames(): array

Get the names of the traits used by this class.

Parameter-Liste

Diese Funktion besitzt keine Parameter.

Rückgabewerte

Returns an array with trait names in values.

add a note add a note

User Contributed Notes 1 note

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