PHP Conference Nagoya 2025

ReflectionClass::getTraitNames

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

ReflectionClass::getTraitNamesRetorna um array de nomes de traits usadas por esta classe

Descrição

public ReflectionClass::getTraitNames(): array

Obtém um array de nomes de traits usadas por esta classe.

Parâmetros

Esta função não possui parâmetros.

Valor Retornado

Retorna um array com nomes de tratis em valores.

adicione uma nota

Notas Enviadas por Usuários (em inglês) 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