Ver Mensaje Individual
  #9 (permalink)  
Antiguo 13/04/2011, 16:05
Avatar de masterpuppet
masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: Donde incluir librerias.. modelo ¿? controlador¿?

Habria que ver, como haces el dispatch ?, utilizas algo parecido a un FrontController ?, osea cual es el punto de entrada de la aplicación ?,

Con respecto a los ejemplos de autoloader, pense que con los que trae el manual podria servir, pero bueno algo simple podria ser:
Código PHP:
Ver original
  1. class Autoloader
  2. {
  3.     protected $_paths = array();
  4.  
  5.     public function __construct(array $paths = array())
  6.     {
  7.         spl_autoload_register(array($this, 'loader'));
  8.         $this->_paths = $paths;
  9.     }
  10.  
  11.     private function loader($className)
  12.     {
  13.         foreach($this->_paths as $path) {
  14.             $className = strtolower($className);
  15.             $class     = $path . DIRECTORY_SEPARATOR . $className . '.php';
  16.             if(file_exists($class)) {
  17.                 include $class;
  18.                 if(class_exists($className)){
  19.                     continue;
  20.                 }
  21.             }
  22.  
  23.         }
  24.     }
  25. }

buscaría la clase en los directorios que le pases por parámetro y el nombre de los ficheros debe ser el nombre de la clase en minúsculas, pero vos lo adaptas a tus necesidades y listo.

para utilizarlo:
Código PHP:
Ver original
  1. //en tu bootstrap
  2. $autoloader = new Autoloader(array('/path/to/dir'));
  3.  
  4. //en algún controller o donde quieras, esto buscaria dentro de "/path/to/dir"
  5. //el fichero myclass.php que contendria la clase MyClass
  6. $class = new MyClass();

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)