# class_uses

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

class_uses — Return the traits used by the given class

### 说明

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

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.

### 参数

`object_or_class`

  An object (class instance) or a string (class name).

`autoload`

  Whether to autoload if not already loaded.

### 返回值

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

### 示例

示例 #1 class_uses() example

`<?php
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));
?>`

以上示例的输出类似于：

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

### 参见

- class_parents() - 返回指定类的父类
- get_declared_traits() - 返回所有已定义的 traits 的数组

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open