Cuando programamos PHP orientado a objetos, comúnmente creamos un archivo para cada objeto. Esto sin duda nos deja una cantidad numerosa de archivos de código. PHP5 nos ofrece la función _autoload(), para poder cargar solo los archivos que realmente necesitamos, esto mejora el rendimiento de la aplicación significativamente.
Un ejemplo de como usar esta funcion seria:
// Carga automaticamente los objetos function __autoload($name) { try{cargar($name);} // Busca la funcion cargar catch(Undefined $e){trigger_error($e->getMessage(),E_USER_ERROR);} catch(Exception $e){trigger_error($e->getMessage(),E_USER_ERROR);} }// Verifica que exista el objeto en caso contrario manda un mensaje function cargar($name){ if(file_exists($class = $name.'.php')) require_once $class; else trigger_error('No existe la clase '.$name,E_USER_ERROR); }
Aqui tenemos dos funciones que tratare de explicar. La primera __autoload es llamada cuando se crea un objeto en PHP, como por ejemplo:
$lista = new lista();
De esta forma __autoload, enviara como parámetro $name, el nombre del objeto que tratamos de crear, en este caso $lista. Manda el nombre a la función cargar(). Esta función, fue creada para buscar el archivo php, en caso de no encontrarlo o no poderlo leer, mandara un error.