« PHP:get_class()関数・get_parent_class()関数 | メイン | PHP:get_class_method()関数 »

2006年02月23日

PHP:is_subclass_of()関数・is_a()関数

is_subclass_of()関数
オブジェクトが、指定したクラスのサブクラスに属する場合、TRUEを返します。

is_a()関数
オブジェクトが、指定したクラスのインスタンスの場合・指定したクラスを継承したサブクラスのインスタンスの場合、TRUEを返します。

class Graphics {
    /* クラスの定義・内容省略 */
}

class Graphics2 extends Graphics {
    /* クラスGraphicsの継承・内容省略 */
}

$obj = new Graphics2();  //インスタンス生成

if(is_subclass_of($obj, "Graphics")){
    print '$objはGraphicsクラスの子クラスです。';
}

※上記の結果、$objはGraphicsクラスの子クラスであるGraphics2クラスのインスタンスなので、「$objはGraphicsクラスの子クラスです。」を出力します。


if(is_a($obj, "Graphics")){
    print 'Graphicsクラスのインスタンスです。';
}

※上記の結果、$objはGraphicsクラスを継承したGraphics2クラスのインスタンスなので、「Graphicsクラスのインスタンスです。」を出力します。

投稿者 wing : 2006年02月23日 01:05

コメント