<?php
class foo {}
class bar extends foo {}
class baz extends bar {}
print_r(class_parents(new baz));
?>
將輸出
陣列
(
[bar] => bar
[foo] => foo
)
(PHP 5, PHP 7, PHP 8)
class_parents — 傳回指定類別的父類別
此函式會返回一個陣列,其中包含給定 object_or_class
的父類別名稱。
成功時返回一個陣列,如果給定的類別不存在,則返回 false
。
範例 #1 class_parents() 範例
<?php
class foo { }
class bar extends foo {}
print_r(class_parents(new bar));
// 您也可以將參數指定為字串
print_r(class_parents('bar'));
spl_autoload_register();
// 使用自動載入來載入 'not_loaded' 類別
print_r(class_parents('not_loaded', true));
?>
上述範例的輸出結果類似於
Array ( [foo] => foo ) Array ( [foo] => foo ) Array ( [parent_of_not_loaded] => parent_of_not_loaded )
注意: 要檢查物件是否繼承自某個類別,應該使用
instanceof
或 is_a() 函式。
<?php
class foo {}
class bar extends foo {}
class baz extends bar {}
print_r(class_parents(new baz));
?>
將輸出
陣列
(
[bar] => bar
[foo] => foo
)