Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Metodo busqueda recursos...

Estas en el tema de Metodo busqueda recursos... en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Bueno, os cuento, en todos mis proyectos utilizo una clase personal que me suministra diferentes métodos para realizar diferentes tareas, uno de estos métodos, que ...
  #1 (permalink)  
Antiguo 16/02/2010, 04:23
 
Fecha de Ingreso: diciembre-2007
Mensajes: 194
Antigüedad: 16 años, 11 meses
Puntos: 5
Metodo busqueda recursos...

Bueno, os cuento, en todos mis proyectos utilizo una clase personal que me suministra diferentes métodos para realizar diferentes tareas, uno de estos métodos, que tengo implementados, y que considero de suma utilidad, es un método que se encarga de encontrar un recurso y devolver su dirección, de tal forma, que todo lo que tengo que hacer desde cualquier clase, o pagina php, es importar esta clase, y cualquier recurso que quiera cargar, otra clase php, archivo, imagen, etc..., lo hago invocando este método y pasandole el nombre del archivo.

El código que utilizo ahora es este, pero es poco reutilizable porque tengo que ir cargando yo en un array todas las direcciones posibles existentes desde una ruta cualquiera al resto de rutas de las estructura de la aplicación. Por ejemplo, podría quedar algo así...

Código PHP:
Ver original
  1. private function buscarRecurso($recurso){
  2.         $directorios = array(   "./",
  3.                                 "../",
  4.                                 "../../",
  5.                                 "./css/",
  6.                                 "../css/",
  7.                                 "../../css/",
  8.                                 "./imagenes/",
  9.                                 "../imagenes/",
  10.                                 "../../imagenes/",
  11.                                 "./imagenes/web/",
  12.                                 "../imagenes/web/",
  13.                                 "../../imagenes/web/",
  14.                                 "./imagenes/articulos/",
  15.                                 "../imagenes/articulos/",
  16.                                 "../../imagenes/articulos/",
  17.                                 "./js/",
  18.                                 "../js/",              
  19.                                 "../../js/",
  20.                                 "./phpClases/",
  21.                                 "../phpClases/",
  22.                                 "../../phpClases/",
  23.                                 "./phpFunciones/",
  24.                                 "../phpFunciones/",
  25.                                 "../../phpFunciones/",
  26.                                 "./phpMailer/",
  27.                                 "../phpMailer/",
  28.                                 "../../phpMailer/",
  29.                                 "./tiny_mce/",
  30.                                 "../tiny_mce/",
  31.                                 "../../tiny_mce/"  
  32.                             );
  33.    
  34.         foreach ($directorios as $clave => $valor) {   
  35.             if (file_exists($valor . $recurso)){
  36.                 return $valor . $recurso;
  37.             }
  38.         }
  39.        
  40.         return '';
  41.     }

¿A alguien se le ocurre como se puede hacer, o darme alguna pista para simplificar la tarea de configurar las rutas de los diferentes proyectos?.

Gracias y un saludo.
__________________
Aprender J2EE en www.programacionj2ee.com.
Mi framework PHP D Framework.
  #2 (permalink)  
Antiguo 16/02/2010, 06:51
 
Fecha de Ingreso: noviembre-2007
Ubicación: Lanus, Buenos Aires
Mensajes: 178
Antigüedad: 17 años
Puntos: 14
Respuesta: Metodo busqueda recursos...

creo que por un lado te serviria leer esto:

http://www.php.net/manual/en/ini.cor...i.include-path

luego sigues con esto:

http://php.net/manual/en/function.set-include-path.php

y para terminar, la magia esta en:

http://php.net/manual/en/language.oop5.autoload.php

y listo, podras lograr hacer algo mucho mas claro, simple y correcto que lo que estas haciendo ;)

Saludos!
  #3 (permalink)  
Antiguo 17/02/2010, 16:42
 
Fecha de Ingreso: diciembre-2007
Mensajes: 194
Antigüedad: 16 años, 11 meses
Puntos: 5
Respuesta: Metodo busqueda recursos...

Cita:
Iniciado por rodrigo_00 Ver Mensaje
creo que por un lado te serviria leer esto:

http://www.php.net/manual/en/ini.cor...i.include-path

luego sigues con esto:

http://php.net/manual/en/function.set-include-path.php

y para terminar, la magia esta en:

http://php.net/manual/en/language.oop5.autoload.php

y listo, podras lograr hacer algo mucho mas claro, simple y correcto que lo que estas haciendo ;)

Saludos!
Bueno, le he echado un primer vistazo rápido y lo único que te puedo decir es que no he entendido nada... jaja

Un día de estos me meteré mas en profundidad a ver si puedo sacar algo en claro e iré posteando aquí mis avances.

Gracias Rodrigo. ;)
__________________
Aprender J2EE en www.programacionj2ee.com.
Mi framework PHP D Framework.
  #4 (permalink)  
Antiguo 17/02/2010, 17:40
 
Fecha de Ingreso: noviembre-2007
Ubicación: Lanus, Buenos Aires
Mensajes: 178
Antigüedad: 17 años
Puntos: 14
Respuesta: Metodo busqueda recursos...

te tiro una descripcion rapida :P

el include_path es un listado de directorios en el que buscar los archivos al hacer un include

con autoloading podes cargar clases sin hacer un include antes, a grandes rasgos :P

si el sitio es 100% orientado a objetos y bien hecho, vas a hacer uso intensivo del autoloading y poquito del include path, lo que te quiero decir con esto es que no pongas todo el arbol de directorios en el include path porque estaria muy mal:P

Saludos
  #5 (permalink)  
Antiguo 24/03/2010, 03:16
 
Fecha de Ingreso: diciembre-2007
Mensajes: 194
Antigüedad: 16 años, 11 meses
Puntos: 5
Respuesta: Metodo busqueda recursos...

Cita:
Iniciado por rodrigo_00 Ver Mensaje
te tiro una descripcion rapida :P

el include_path es un listado de directorios en el que buscar los archivos al hacer un include

con autoloading podes cargar clases sin hacer un include antes, a grandes rasgos :P

si el sitio es 100% orientado a objetos y bien hecho, vas a hacer uso intensivo del autoloading y poquito del include path, lo que te quiero decir con esto es que no pongas todo el arbol de directorios en el include path porque estaria muy mal:P

Saludos
Hola rodrigo, muchas gracias, tiempo después (cuando lo he tenido), me voy a poner con esto, que ademas tengo en vistas un macroproyecto, y esto me va a venir de perlas.

Muchas gracias por tu ultimo post, posteare aquí mis avances.

Un saludo y aunque tarde, muy tarde, de nuevo gracias. :)
__________________
Aprender J2EE en www.programacionj2ee.com.
Mi framework PHP D Framework.
  #6 (permalink)  
Antiguo 24/03/2010, 05:11
 
Fecha de Ingreso: diciembre-2007
Mensajes: 194
Antigüedad: 16 años, 11 meses
Puntos: 5
Respuesta: Metodo busqueda recursos...

Bueno, he creado el siguiente método en el constructor de una clase base del proyecto (pruebas) que me CONFIGURA el include_path con los paths necesarios, de momento y para hacer la prueba solo dos.

Código PHP:
Ver original
  1. public function setPaths(){
  2.         $directorios = "./recursos/;";
  3.         $directorios .= "./recursos/imagenes/";
  4.  
  5.         echo set_include_path($directorios);
  6.         echo "<br/>INCLUDE: " . get_include_path();
  7.         echo "<br/><br/>";
  8.     }

(Los echos son para comprobar que funciona correctamente).

Después, tengo creado el siguiente método...

Código PHP:
Ver original
  1. public function getURLRecurso($recurso){
  2.         echo file($recurso, FILE_USE_INCLUDE_PATH);
  3.     }

Entonces llamo a este método pasandole el nombre del archivo que quiero que busque...

Código PHP:
Ver original
  1. $DPLClass->getURLRecurso("pos.gif");

Pero claro, esto evidentemente no me devuelve la dirección del archivo en cuestión, que es lo que yo quiero. Y no se como puedo conseguirla, ya que es el propio lenguaje el que se encarga de buscar automáticamente en los directorios del path... y con este método, lo único que consigo es tener el archivo, pero no su ubicación, que es lo que quiero... ¿Alguna solución?. Gracias!!.
__________________
Aprender J2EE en www.programacionj2ee.com.
Mi framework PHP D Framework.
  #7 (permalink)  
Antiguo 26/03/2010, 05:13
 
Fecha de Ingreso: diciembre-2007
Mensajes: 194
Antigüedad: 16 años, 11 meses
Puntos: 5
Respuesta: Metodo busqueda recursos...

Bueno, ya he construido un método bastante bueno, que realiza la operación que necesito sin necesidad de tener que especificar previamente en ningún sitio ningún directorio de la aplicación.

Un saludo.
__________________
Aprender J2EE en www.programacionj2ee.com.
Mi framework PHP D Framework.

Etiquetas: metodo, recursos, busquedas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:03.