class_implements
与えられたクラスあるいはインターフェイスが実装しているインターフェイスを返す
説明
arrayfalse class_implements(objectstring $object_or_class
, bool $autoload
= true
)
パラメータ
-
object_or_class
-
オブジェクト (クラスのインスタンス)
もしくは文字列 (クラス名あるいはインターフェイス名) を指定します。
-
autoload
-
まだロードされていない場合に オートロード するかどうか。
戻り値
成功した場合に配列、
指定されたクラスが存在しない場合に false
を返します。
例
例1 class_implements の例
<?php
interface foo { }
class bar implements foo {}
print_r(class_implements(new bar));
// パラメータを文字列として指定しても良い
print_r(class_implements('bar'));
spl_autoload_register();
// 'not_loaded' クラスをロードするためにオートローディングを使用する
print_r(class_implements('not_loaded', true));
?>
Array
(
[foo] => foo
)
Array
(
[foo] => foo
)
Array
(
[interface_of_not_loaded] => interface_of_not_loaded
)
注意
注意:
オブジェクトが、インターフェイスを実装しているかどうかを調べるには、
instanceof
か、is_a 関数を代わりに使うべきです。
参考
- class_parents
- get_declared_interfaces
- is_a
instanceof