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

# class_exists

(PHP 4, PHP 5)

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

### 説明

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

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

### パラメータ

`class_name`

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

`autoload`

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

### 返り値

クラス `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($class, false)) {
trigger_error("Unable to load class: $class", E_USER_WARNING);
}
}
if (class_exists('MyClass')) {
$myclass = new MyClass();
}
?>`

### 参考

- function_exists() - 指定した関数が定義されている場合に TRUE を返す
- interface_exists() - インターフェースが宣言されているかどうかを確認する
- get_declared_classes() - 定義済のクラスの名前を配列として返す

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