class_uses
(PHP 5 >= 5.4.0, PHP 7)
class_uses — 指定したクラスが使っているトレイトを返す
説明
class_uses
( mixed $class
[, bool $autoload
= true
] ) : array
この関数は、指定したクラスが使っているトレイトの名前を配列で返します。 しかし、親クラスで使っているトレイトは含まれません。
パラメータ
class
- オブジェクト (クラスのインスタンス) あるいは文字列 (クラス名)。
autoload
- マジックメソッド __autoload() で、この関数からクラスを自動的に読み込ませるかどうか。
返り値
成功した場合に配列、エラー時には false
を返します。
例
例1 class_uses() の例
<?phptrait foo { }class bar { use foo;}print_r(class_uses(new bar));print_r(class_uses('bar'));function __autoload($class_name) { require_once $class_name . '.php';}// __autoload で 'not_loaded' クラスを読み込みますprint_r(class_uses('not_loaded', true));?>
上の例の出力は、 たとえば以下のようになります。
Array ( [foo] => foo ) Array ( [foo] => foo ) Array ( [trait_of_not_loaded] => trait_of_not_loaded )