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
spl_autoload_unregister(callable $autoload_function);
Exemple
Enregistrons puis supprimons un autoloader :
<?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
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 :
true
Exemple
Tentative de suppression d'un autoloader inexistant :
<?php
$res = spl_autoload_unregister('nonexistent_function');
var_dump($res);
?>
Résultat de l'exécution du code :
false
Voir aussi
-
la fonction spl_autoload_register,
qui enregistre un autoloader -
la fonction spl_autoload_functions,
qui renvoie les autoloaders -
la fonction spl_autoload_call,
qui appelle un autoloader