Функция spl_autoload_unregister
Функция spl_autoload_unregister
позволяет удалить ранее зарегистрированную
функцию автозагрузки из стека SPL. В параметре принимает callback-функцию,
которую нужно удалить из списка автозагрузчиков.
Синтаксис
spl_autoload_unregister(callable $autoload_function);
Пример
Давайте зарегистрируем и затем удалим автозагрузчик:
<?php
function my_autoload($class) {
include 'classes/' . $class . '.php';
}
spl_autoload_register('my_autoload');
spl_autoload_unregister('my_autoload');
?>
Теперь функция my_autoload больше не будет вызываться при попытке автозагрузки неопределенного класса.
Пример
Проверка успешности удаления автозагрузчика:
<?php
function autoload_one($class) {
echo "Trying to load $class\n";
}
spl_autoload_register('autoload_one');
$res = spl_autoload_unregister('autoload_one');
var_dump($res);
?>
Результат выполнения кода:
true
Пример
Попытка удалить несуществующий автозагрузчик:
<?php
$res = spl_autoload_unregister('nonexistent_function');
var_dump($res);
?>
Результат выполнения кода:
false
Смотрите также
-
функцию spl_autoload_register,
которая регистрирует автозагрузчик -
функцию spl_autoload_functions,
которая возвращает автозагрузчики -
функцию spl_autoload_call,
которая вызывает автозагрузчик