Funktion spl_autoload_unregister
Die Funktion spl_autoload_unregister ermöglicht es, eine zuvor registrierte
Autoload-Funktion aus dem SPL-Stack zu entfernen. Als Parameter akzeptiert sie eine Callback-Funktion,
die aus der Liste der Autoloader entfernt werden soll.
Syntax
spl_autoload_unregister(callable $autoload_function);
Beispiel
Lassen Sie uns einen Autoloader registrieren und anschließend entfernen:
<?php
function my_autoload($class) {
include 'classes/' . $class . '.php';
}
spl_autoload_register('my_autoload');
spl_autoload_unregister('my_autoload');
?>
Die Funktion my_autoload wird nun nicht mehr aufgerufen, wenn versucht wird, eine undefinierte Klasse zu laden.
Beispiel
Überprüfung des erfolgreichen Entfernens eines Autoloaders:
<?php
function autoload_one($class) {
echo "Versuche, $class zu laden\n";
}
spl_autoload_register('autoload_one');
$res = spl_autoload_unregister('autoload_one');
var_dump($res);
?>
Ergebnis der Codeausführung:
true
Beispiel
Versuch, einen nicht vorhandenen Autoloader zu entfernen:
<?php
$res = spl_autoload_unregister('nonexistent_function');
var_dump($res);
?>
Ergebnis der Codeausführung:
false
Siehe auch
-
die Funktion spl_autoload_register,
die einen Autoloader registriert -
die Funktion spl_autoload_functions,
die die Autoloader zurückgibt -
die Funktion spl_autoload_call,
die den Autoloader aufruft