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

phpspl_autoload_unregister(callable $autoload_function);

Exemplo

Vamos registrar e depois remover um autoloader:

php<?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<?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:

phptrue

Exemplo

Tentativa de remover um autoloader inexistente:

php<?php
  $res = spl_autoload_unregister('nonexistent_function');
  var_dump($res);
?>

Resultado da execução do código:

phpfalse

Veja também