Funktionen spl_autoload_unregister

Funktionen spl_autoload_unregister tillader at fjerne en tidligere registreret autoload-funktion fra SPL-stakken. Den tager en callback-funktion som parameter, som skal fjernes fra listen over autoloadere.

Syntaks

phpspl_autoload_unregister(callable $autoload_function);

Eksempel

Lad os registrere og derefter fjerne en autoloader:

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

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

Nu vil funktionen my_autoload ikke længere blive kaldt ved forsøg på autoload af en udefineret klasse.

Eksempel

Kontrol af successfuld fjernelse af autoloader:

php<?php
  function autoload_one($class) {
    echo "Forsøger at indlæse $class\n";
  }

  spl_autoload_register('autoload_one');
  $res = spl_autoload_unregister('autoload_one');
  var_dump($res);
?>

Resultat af kodeudførelse:

phptrue

Eksempel

Forsøg på at fjerne en ikke-eksisterende autoloader:

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

Resultat af kodeudførelse:

phpfalse

Se også