Função spl_autoload_unregister
A função spl_autoload_unregister permite remover uma função de autoload
previamente registrada da pilha SPL. No parâmetro, aceita uma função de callback
que precisa ser removida da lista de autoloaders.
Sintaxe
spl_autoload_unregister(callable $autoload_function);
Exemplo
Vamos registrar e depois remover um autoloader:
<?php
function my_autoload($class) {
include 'classes/' . $class . '.php';
}
spl_autoload_register('my_autoload');
spl_autoload_unregister('my_autoload');
?>
Agora a função my_autoload não será mais chamada ao tentar carregar automaticamente uma classe indefinida.
Exemplo
Verificando o sucesso da remoção do autoloader:
<?php
function autoload_one($class) {
echo "Tentando carregar $class\n";
}
spl_autoload_register('autoload_one');
$res = spl_autoload_unregister('autoload_one');
var_dump($res);
?>
Resultado da execução do código:
true
Exemplo
Tentativa de remover um autoloader inexistente:
<?php
$res = spl_autoload_unregister('nonexistent_function');
var_dump($res);
?>
Resultado da execução do código:
false
Veja também
-
a função spl_autoload_register,
que registra um autoloader -
a função spl_autoload_functions,
que retorna os autoloaders -
a função spl_autoload_call,
que chama o autoloader