ฟังก์ชัน class_uses
ฟังก์ชัน class_uses คืนค่าอาร์เรย์ที่มีชื่อของ traits
ที่คลาสหรืออ็อบเจ็กต์ที่ระบุใช้ ฟังก์ชันรับ
พารามิเตอร์บังคับหนึ่งตัว - คลาสหรืออ็อบเจ็กต์ และพารามิเตอร์ทางเลือกหนึ่งตัว
ที่กำหนดว่าจำเป็นต้องรวม traits ของคลาสแม่ด้วยหรือไม่
ไวยากรณ์
class_uses(object|string $class, bool $autoload = true): array
ตัวอย่าง
มาสร้าง traits หลายตัวและคลาสที่ใช้พวกมัน:
<?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'
]
ตัวอย่าง
ตรวจสอบ traits สำหรับอ็อบเจ็กต์:
<?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,
ซึ่งคืนค่าอินเทอร์เฟซของคลาส