函式名:is_a()
適用版本:PHP 4, PHP 5, PHP 7
用法:is_a() 函式用於檢查一個物件是否屬於指定的類或其子類。
語法:bool is_a( object $object, string $class_name )
引數:
- $object:要檢查的物件。
- $class_name:要檢查的類名。
返回值:
- 如果 $object 是 $class_name 的一個物件或者 $class_name 的一個子類的物件,則返回 true。
- 如果 $object 不是 $class_name 的一個物件或者 $class_name 的一個子類的物件,則返回 false。
示例:
class Person {
public $name;
}
class Student extends Person {
public $grade;
}
$person = new Person();
$student = new Student();
// 檢查 $person 是否是 Person 類的物件
if (is_a($person, 'Person')) {
echo '$person 是 Person 類的物件';
} else {
echo '$person 不是 Person 類的物件';
}
// 檢查 $student 是否是 Person 類的物件
if (is_a($student, 'Person')) {
echo '$student 是 Person 類的物件';
} else {
echo '$student 不是 Person 類的物件';
}
// 檢查 $student 是否是 Student 類的物件
if (is_a($student, 'Student')) {
echo '$student 是 Student 類的物件';
} else {
echo '$student 不是 Student 類的物件';
}
輸出:
$person 是 Person 類的物件
$student 是 Person 類的物件
$student 是 Student 類的物件
以上示例中,我們定義了一個 Person 類和一個 Student 類,Student 類是 Person 類的子類。我們建立了一個 $person 物件和一個 $student 物件。使用 is_a() 函式來檢查這些物件的類屬關係。第一個檢查表明 $person 是 Person 類的物件,第二個檢查表明 $student 也是 Person 類的物件,第三個檢查表明 $student 是 Student 類的物件。