PHP 7.2.0 Release Candidate 4 Released

class_parents

(PHP 5 >= 5.1.0, PHP 7)

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

説明

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

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

パラメータ

class

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

autoload

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

返り値

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

変更履歴

バージョン 説明
5.1.0 文字列として class パラメータを渡すオプションが追加されました。 autoload パラメータが追加されました。

例1 class_parents() の例

<?php

class foo { }
class 
bar extends foo {}

print_r(class_parents(new bar));

// PHP 5.1.0 以降、パラメータを文字列として指定しても良い
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
17
sergei dot solomonov at gmail dot com
5 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