Fonction spl_autoload_unregister

La fonction spl_autoload_unregister permet de supprimer une fonction d'autochargement précédemment enregistrée de la pile SPL. Elle prend en paramètre une fonction de rappel (callback) qui doit être supprimée de la liste des autoloaders.

Syntaxe

phpspl_autoload_unregister(callable $autoload_function);

Exemple

Enregistrons puis supprimons un autoloader :

php<?php
  function my_autoload($class) {
    include 'classes/' . $class . '.php';
  }

  spl_autoload_register('my_autoload');
  spl_autoload_unregister('my_autoload');
?>

Désormais, la fonction my_autoload ne sera plus appelée lors d'une tentative d'autochargement d'une classe non définie.

Exemple

Vérification de la suppression réussie d'un autoloader :

php<?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);
?>

Résultat de l'exécution du code :

phptrue

Exemple

Tentative de suppression d'un autoloader inexistant :

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

Résultat de l'exécution du code :

phpfalse

Voir aussi