(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
)