Функция spl_autoload_call
Функция spl_autoload_call вызывает все зарегистрированные автозагрузчики для попытки загрузки указанного класса. В отличие от spl_autoload_register, которая регистрирует автозагрузчики, эта функция непосредственно выполняет их вызов. Единственный параметр - имя класса, который нужно загрузить.
Синтаксис
spl_autoload_call(string $class_name): void
Пример
Попробуем загрузить несуществующий класс без автозагрузчика:
<?php
spl_autoload_call('NonExistentClass');
?>
Результат выполнения кода (ошибка, если автозагрузчики не зарегистрированы):
// Ничего не произойдет, если нет зарегистрированных автозагрузчиков
Пример
Создадим простой автозагрузчик и попробуем загрузить класс:
<?php
spl_autoload_register(function($class) {
echo "Trying to load class: $class\n";
});
spl_autoload_call('TestClass');
?>
Результат выполнения кода:
Trying to load class: TestClass
Пример
Проверим работу с несколькими автозагрузчиками:
<?php
spl_autoload_register(function($class) {
echo "First loader: $class\n";
});
spl_autoload_register(function($class) {
echo "Second loader: $class\n";
});
spl_autoload_call('MyClass');
?>
Результат выполнения кода:
First loader: MyClass
Second loader: MyClass
Смотрите также
-
функцию spl_autoload_register,
которая регистрирует автозагрузчик -
функцию spl_autoload_functions,
которая возвращает автозагрузчики -
функцию class_exists,
которая проверяет класс