class_uses()

class_uses() — Return the traits used by the given class.

Built-in function of PHP 8.5. The manual lists it as available in PHP 5 >= 5.4.0, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.

What it does

This function returns an array with the names of the traits that the given object_or_class uses. This does however not include any traits used by a parent class.

Signature

class_uses(object|string $object_or_class, bool $autoload = true): array|false

Parameters

ParameterTypeWhat it takes
$object_or_classobject|stringAn object (class instance) or a string (class name).
$autoloadboolWhether to autoload if not already loaded.

Return value

An array on success, or false when the given class doesn't exist.

Example

A runnable snippet:

trait foo { } class bar { use foo; } print_r(class_uses(new bar)); print_r(class_uses('bar')); spl_autoload_register(); // use autoloading to load the 'not_loaded' class print_r(class_uses('not_loaded', true));

Output:

Array ( [foo] => foo ) Array ( [foo] => foo ) Array ( [trait_of_not_loaded] => trait_of_not_loaded )

See also

class_parents(), get_declared_traits()

All PHP 8.5 built-in functions

Reference card built from the PHP manual page class_uses() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.