PHP 8.5.0 Alpha 1 available for testing

spl_autoload_unregister

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

spl_autoload_unregister Elimina una función dada de la implementación __autoload()

Descripción

spl_autoload_unregister(callable $callback): bool

Elimina una función de la pila autoload. Si la pila está activa y vacía después de eliminar la función dada, entonces será desactivada.

Cuando esta función activa una pila autoload, todas las funciones __autoload existentes no serán reactivadas.

Parámetros

callback

La función autoload a eliminar.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

add a note

User Contributed Notes 2 notes

up
13
edgarortegaramirez at example dot com
12 years ago
$functions = spl_autoload_functions();
foreach($functions as $function) {
spl_autoload_unregister($function);
}

A nice way to unregister all functions.
up
3
Julien B.
15 years ago
Restore the binding to __autoload after using a spl_autoload_register() call

<?php
spl_autoload_register
(array('Doctrine', 'autoload'));

// some process

spl_autoload_unregister(array('Doctrine', 'autoload'));

// but now the old __autoload is not triggered anymore
// you need to use :
spl_autoload_register('__autoload');

// but this will throw a LogicExeption if the __autoload
// function is not defined yet, so use:
function autoload__ ( $className ) {
if (
function_exists('__autoload'))
__autoload($className);
}

spl_autoload_register('autoload__');

?>

So you can define your old __autoload in another file for example

May helps some folks in this catch 22
To Top