PHP class_exists 类/对象函数

  • 定义和用法

    class_exists - 检查类是否已定义
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    V5.0.2 不再为已定义的 interface 返回 TRUE。请使用 interface_exists()。
  • 语法

    class_exists (string $class_name [, bool $autoload = true ] )   
    
    检查指定的类是否已定义。
  • 参数

    参数 必需的 描述
    class_name 类名。名字的匹配是不分区大小写的。
    autoload 是否默认调用 __autoload。
  • 返回值

    如果由 class_name 所指的类已经定义,此函数返回 TRUE,否则返回 FALSE。
  • 示例

    <?php
    function __autoload($class)
    {
       include($class . '.php');
    
       // 检查include是否声明了类
       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() - 返回由已定义类的名字所组成的数组