(PHP 5 >= 5.4.0, PHP 7, PHP 8)
class_uses — Возвращает список трейтов, используемых заданным классом
Эта функция возвращает массив с именами трейтов, которые использует заданный класс object_or_class
. В этот массив, однако, не попадут трейты, используемые в классах-родителях.
object_or_class
Объект (экземпляр класса) или строка (имя класса).
autoload
Нужно ли автоматически подгружать класс, если он ещё не загружен.
В случае успешного выполнения будет возвращён массив, если заданный класс не существует, возвращается false
.
Пример #1 Пример использования class_uses()
<?php
trait foo { }
class bar {
use foo;
}
print_r(class_uses(new bar));
print_r(class_uses('bar'));
spl_autoload_register();
// использование автозагрузки для загрузки ещё незагруженного класса 'not_loaded'
print_r(class_uses('not_loaded', true));
?>
Вывод приведённого примера будет похож на:
Array ( [foo] => foo ) Array ( [foo] => foo ) Array ( [trait_of_not_loaded] => trait_of_not_loaded )