class_exists

Checks if the class has been defined

&reftitle.description; `bool` `class_exists` `string` `class_name` `bool` `autoload` true

This function checks whether or not the given class has been defined.

&reftitle.parameters;

`class_name`

- The class name. The name is matched in a case-insensitive manner.

`autoload`

- Whether or not to call &link.autoload; by default.

&reftitle.returnvalues;

Returns &true; if `class_name` is a defined class, &false; otherwise.

&reftitle.changelog;

&Version; | &Description;
5.0.2 | No longer returns &true; for defined interfaces. Use `interface_exists`.
5.0.0 | The `autoload` parameter was added.

&reftitle.examples;

### `class_exists` example

    <?php
    // Check that the class exists before trying to use it
    if (class_exists('MyClass')) {
        $myclass = new MyClass();
    }

    ?>

### `autoload` parameter example

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

        // Check to see whether the include declared the class
        if (!class_exists($class, false)) {
            trigger_error("Unable to load class: $class", E_USER_WARNING);
        }
    }

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

    ?>

&reftitle.seealso;

- `function_exists`
- `interface_exists`
- `get_declared_classes`