Fonction class_uses
La fonction class_uses retourne un tableau avec les noms des traits
utilisés par la classe ou l'objet spécifié. La fonction accepte
un paramètre obligatoire - une classe ou un objet, et un paramètre optionnel
déterminant s'il faut inclure les traits des classes parentes.
Syntaxe
class_uses(object|string $class, bool $autoload = true): array
Exemple
Créons plusieurs traits et une classe qui les utilise :
<?php
trait TraitA {
public function methodA() {}
}
trait TraitB {
public function methodB() {}
}
class MyClass {
use TraitA, TraitB;
}
$res = class_uses('MyClass');
print_r($res);
?>
Résultat de l'exécution du code :
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Exemple
Vérifions les traits pour un objet :
<?php
$obj = new MyClass();
$res = class_uses($obj);
print_r($res);
?>
Résultat de l'exécution du code :
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Exemple
Travail avec l'héritage :
<?php
class ParentClass {
use TraitA;
}
class ChildClass extends ParentClass {
use TraitB;
}
$res = class_uses('ChildClass');
print_r($res);
?>
Résultat de l'exécution du code :
[
'TraitB' => 'TraitB'
]
Voir aussi
-
la fonction
class_parents,
qui retourne les classes parentes -
la fonction
class_implements,
qui retourne les interfaces de la classe