สามารถใช้ฟังก์ชัน property_exists() หรือ isset() เพื่อตรวจสอบว่าคุณสมบัตินั้นมีอยู่ในคลาสหรืออ็อบเจกต์หรือไม่
ไวยากรณ์
ด้านล่างเป็นไวยากรณ์ของ property_exists() function−
property_exists( mixed $class , string $property )
ตัวอย่าง
if (property_exists($object, 'a_property'))
ด้านล่างนี้คือไวยากรณ์ของฟังก์ชัน isset()−
isset( mixed $var [, mixed $... ] )
ตัวอย่าง
if (isset($object->a_property))
isset() จะคืนค่าเท็จหาก 'a_property' เป็นค่าว่าง
ตัวอย่าง
เรามาดูตัวอย่างกัน −
<?php class Demo { public $one; private $two; static protected $VAL; static function VAL() { var_dump(property_exists('myClass', 'two')); } } var_dump(property_exists('Demo', 'one')); var_dump(property_exists(new Demo, 'one')); ?>
ผลลัพธ์
สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้−
bool(true) bool(true)