ฟังก์ชัน is_a
ฟังก์ชัน is_a รับวัตถุและชื่อคลาส คืนค่า true ถ้าวัตถุเป็นอินสแตนซ์ของคลาสนั้นหรือคลาสลูกหลานของมัน พารามิเตอร์ที่สามสามารถระบุได้ว่าต้องการพิจารณาการสืบทอดหรือไม่ (ค่าเริ่มต้นคือ true)
ไวยากรณ์
is_a(object, class_name, allow_string = true);
ตัวอย่าง
มาตรวจสอบว่าวัตถุเป็นของคลาส stdClass หรือไม่:
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
ผลลัพธ์จากการรันโค้ด:
true
ตัวอย่าง
มาตรวจสอบการสืบทอดคลาส:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
ผลลัพธ์จากการรันโค้ด:
true
ตัวอย่าง
มาตรวจสอบการทำงานกับอินเทอร์เฟซ:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
ผลลัพธ์จากการรันโค้ด:
true
ดูเพิ่มเติม
-
ฟังก์ชัน is_subclass_of,
ซึ่งตรวจสอบการสืบทอด -
ฟังก์ชัน instanceof,
โอเปอเรเตอร์ตรวจสอบอินสแตนซ์ -
ฟังก์ชัน get_class,
ซึ่งคืนค่าคลาสของวัตถุ -
ฟังก์ชัน class_implements,
ซึ่งคืนค่าอินเทอร์เฟซของคลาส