class_parents

(PHP 5, PHP 7, PHP 8)

class_parents 与えられたクラスの親クラスを返す

説明

class_parents(mixed $class, bool $autoload = true): array

この関数は、与えられたクラス class の親クラス名を 配列で返します。

パラメータ

class

オブジェクトもしくはクラスの文字列を指定します。

autoload

__autoload() マジックメソッドを通じて、 この関数にクラスを自動的にロードさせるかどうかを指定します。

返り値

成功した場合に配列、エラー時に false を返します。

例1 class_parents() の例

<?php

class foo { }
class 
bar extends foo {}

print_r(class_parents(new bar));

// パラメータを文字列として指定しても良い
print_r(class_parents('bar'));


function 
__autoload($class_name) {
   require_once 
$class_name '.php';
}

// 'not_loaded' クラスをロードするために __autoload を使用する
print_r(class_parents('not_loaded'true));
?>

上の例の出力は、 たとえば以下のようになります。

Array
(
    [foo] => foo
)

Array
(
    [parent_of_not_loaded] => parent_of_not_loaded
)

参考

  • class_implements() - 与えられたクラスあるいはインターフェイスが実装しているインターフェイスを返す

add a note add a note

User Contributed Notes 1 note

up
27
sergei dot solomonov at gmail dot com
11 years ago
<?php
class foo {}
class
bar extends foo {}
class
baz extends bar {}

print_r(class_parents(new baz));
?>

Will output:
Array
(
    [bar] => bar
    [foo] => foo
)
To Top