Функција class_uses
Функцијата class_uses враќа низа со имиња на трејтови,
кои ги користи наведената класа или објект. Функцијата прима
еден задолжителен параметар - класа или објект, и еден опционален
параметар, кој одредува дали треба да вклучи трејтови на родителските класи.
Синтакса
class_uses(object|string $class, bool $autoload = true): array
Пример
Ќе создадеме неколку трејтови и класа која ги користи:
<?php
trait TraitA {
public function methodA() {}
}
trait TraitB {
public function methodB() {}
}
class MyClass {
use TraitA, TraitB;
}
$res = class_uses('MyClass');
print_r($res);
?>
Резултат од извршувањето на кодот:
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Пример
Да ги провериме трејтовите за објект:
<?php
$obj = new MyClass();
$res = class_uses($obj);
print_r($res);
?>
Резултат од извршувањето на кодот:
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Пример
Работа со наследување:
<?php
class ParentClass {
use TraitA;
}
class ChildClass extends ParentClass {
use TraitB;
}
$res = class_uses('ChildClass');
print_r($res);
?>
Резултат од извршувањето на кодот:
[
'TraitB' => 'TraitB'
]
Погледнете ги и
-
функцијата
class_parents,
која ги враќа родителските класи -
функцијата
class_implements,
која ги враќа интерфејсите на класата