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
| Parameter | Type | What it takes |
|---|---|---|
| $object_or_class | object|string | An object (class instance) or a string (class name). |
| $autoload | bool | Whether 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.