Auto carga de Objetos

Auto carga de Objetos

Muchos desarrolladores que escriben aplicaciones con programaci贸n orientada a objetos crean un archivo fuente PHP por cada definici贸n de clase. Una de las molestias m谩s grandes es tener que escribir una larga lista de includes necesarios al principio de cada script (uno para cada clase).

En PHP 5, esto ya no es necesario. Puede definir una funci贸n __autoload la cual es llamada autom谩ticamente en caso de que intente usar una clase que no ha sido definida a煤n. Al llamar esta funci贸n la ejecuci贸n del script da una 煤ltima oportunidad de cargar la clase antes de que PHP falle con un error.

Nota: Las excepciones arrojadas en la funci贸n __autoload no pueden ser capturadas en el bloque catch y resultan en el despliegue de un error fatal.

Ejemplo 19-5. Ejemplo de auto carga

Este ejemplo intenta cargar las clases MyClass1 y MyClass2 de los archivos MyClass1.php y MyClass2.php respectivamente.

<?php
function __autoload($class_name) {
    require_once
$class_name . '.php';
}

$obj  = new MyClass1();
$obj2 = new MyClass2();
?>