class_exists
(PHP 4, PHP 5, PHP 7, PHP 8)
class_exists — Проверяет, доступна ли автозагрузка класса или содержит ли код объявление класса
Список параметров
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';
// Проверим, содержится ли объявление класса в файле, который подключили выражением include
if (!class_exists($class_name, false)) {
throw new LogicException("Невозможно загрузить класс: $class_name");
}
});
if (class_exists(MyClass::class)) {
$myclass = new MyClass();
}