PHP 类和对象函数

PHP class_exists() 函数用于检查给定的类是否已定义。如果给定的类已定义,则返回 true,否则返回 false。

语法

class_exists(class, autoload) 

参数

class必填。 指定要检查的类名。名称匹配不区分大小写。
autoload可选。 指定是否默认调用__autoload

返回值

返回值如果 class 是已定义的类,则为 true,否则为 false。

示例:class_exists() 示例

下面的示例显示 class_exists( ) 函数。

<?php
//检查类是否存在
//在尝试使用它之前
if (class_exists('MyClass')) {
  $MyObj = new MyClass();
  echo "An object of class 'MyClass' is created.";
} else {
  echo "'MyClass' do not exist!.";
}
?> 

上述代码的输出将是:

'MyClass' do not exist!. 

示例:使用自动加载参数

示例下面展示了如何在此函数中使用autoload参数。

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

  //检查是否
  //包含声明的类
  if (!class_exists($class_name, false)) {
    throw new LogicException("Unable to load class: $class_name");
  }
});

if (class_exists(MyClass::class)) {
  $MyObj = new MyClass();
}
?>