Autocarga de clases Muchos desarrolladores que escriben aplicaciones orientadas a objetos crean un fichero fuente por definición de clase. Uno de los mayores inconvenientes de este método es tener que escribir una larga lista de inclusiones de ficheros de clases al inicio de cada script: una inclusión por clase. La función spl_autoload_register registra un número cualquiera de cargadores automáticos, lo que permite a las clases y a las interfaces ser automáticamente cargadas si no están definidas actualmente. Al registrar autocargadores, PHP da una última oportunidad de incluir una definición de clase o interfaz, antes de que PHP falle con un error. Cualquier construcción similar a las clases puede ser autocargada de la misma manera. Esto incluye las clases, interfaces, traits y enumeraciones. Anterior a PHP 8.0.0, era posible utilizar __autoload para autocargar las clases y las interfaces. Sin embargo, es una alternativa menos flexible a spl_autoload_register y __autoload está obsoleto a partir de PHP 7.2.0, y eliminado a partir de PHP 8.0.0. spl_autoload_register puede ser llamada varias veces para registrar varios autocargadores. Lanzar una excepción desde una función de autocarga, interrumpirá este proceso y no permitirá que las funciones de autocarga siguientes sean ejecutadas. Por esta razón, lanzar excepciones desde una función de autocarga es fuertemente desaconsejado. Ejemplo de autocarga Este ejemplo intenta cargar las clases MiClase1 y MiClase2, respectivamente desde los ficheros MiClase1.php y MiClase2.php. ]]> Otro ejemplo de autocarga Este ejemplo intenta cargar la interfaz ITest. ]]> Uso del autoloader de Composer &link.composer; genera un fichero vendor/autoload.php configurado para cargar automáticamente los paquetes gestionados por Composer. Al incluir este fichero, estos paquetes pueden ser utilizados sin trabajo adicional. ", $uuid->toString(), "\n"; ?> ]]> &reftitle.seealso; unserialize unserialize_callback_func unserialize_max_depth spl_autoload_register spl_autoload __autoload