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функциясы,
ол класстың интерфейстерін қайтарады