class_exists

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

class_existsПроверяет, был ли объявлен класс

Описание

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

Эта функция проверяет, был ли объявлен указанный класс или нет.

Список параметров

class

Имя класса. Воспринимается без учёта регистра.

autoload

Нужно ли автоматически подгружать класс, если он ещё не загружен.

Возвращаемые значения

Возвращает true, если класс class объявлен, иначе false.

Примеры

Пример #1 Пример использования class_exists()

<?php
// Проверяем существование класса перед его использованием
if (class_exists('MyClass')) {
$myclass = new MyClass();
}

?>

Пример #2 Пример использования c параметром 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)) {
$myclass = new MyClass();
}

?>

Смотрите также

  • function_exists() - Возвращает true, если указанная функция определена
  • enum_exists() - Проверяет, определено ли перечисление
  • interface_exists() - Проверяет, определён ли интерфейс
  • get_declared_classes() - Возвращает массив с именами объявленных классов