クラス/オブジェクト関数
PHP Manual

class_exists

(PHP 4, PHP 5)

class_existsクラスが定義済みかどうかを確認する

説明

bool class_exists ( string $class_name [, bool $autoload = true ] )

この関数は指定したクラスが定義されているかどうかを調べます。

パラメータ

class_name

クラス名。大文字小文字は区別しません。

autoload

デフォルトで __autoload をコールするかしないか。 デフォルトは TRUE です。

返り値

クラス class_name が定義されている場合に TRUE、 それ以外の場合に FALSE を返します。

変更履歴

バージョン 説明
5.0.2 定義済みのインターフェイスに対しては TRUE を返さないようになりました。 インターフェイスについては interface_exists() を使用します。
5.0.0 autoload パラメータが追加されました。

例1 class_exists() の例

<?php
// クラスを使用する前に、それが存在するかどうかを調べます
if (class_exists('MyClass')) {
    
$myclass = new MyClass();
}

?>

例2 autoload パラメータの例

<?php
function __autoload($class)
{
    include(
$class '.php');

    
// クラス宣言を含むかどうか確認する
    
if (!class_exists($classfalse)) {
        
trigger_error("Unable to load class: $class"E_USER_WARNING);
    }
}

if (
class_exists('MyClass')) {
    
$myclass = new MyClass();
}

?>

参考


クラス/オブジェクト関数
PHP Manual