class_exists

(PHP 4, PHP 5, PHP 7, PHP 8)

class_exists检查类是否已定义

说明

class_exists(string $class, bool $autoload = true): bool

检查指定的类是否已定义。

参数

class

类名。名字的匹配是不分区大小写的。

autoload

是否默认调用 __autoload

返回值

如果由 class 所指的类已经定义,此函数返回 true,否则返回 false

范例

示例 #1 class_exists() 例子

<?php
// 使用前检查类是否存在
if (class_exists('MyClass')) {
    
$myclass = new MyClass();
}

?>

示例 #2 autoload parameter 例子

<?php
spl_autoload_register
(function ($class_name) {
    include 
$class_name '.php';

    
// Check to see whether the include declared the class
    
if (!class_exists($class_namefalse)) {
        throw new 
LogicException("Unable to load class: $class_name");
    }
});

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

?>

参见