Ver Mensaje Individual
  #6 (permalink)  
Antiguo 31/05/2012, 03:54
Avatar de zerpico_01
zerpico_01
 
Fecha de Ingreso: enero-2008
Ubicación: Wilde - Avellaneda -
Mensajes: 421
Antigüedad: 16 años, 3 meses
Puntos: 13
Respuesta: listar contenido directorio bucle rompe neuronas NO tengo idea de como mej

Pues bien por si le sirve a alguien me ha quedado asi, primero hice esto:

Código PHP:
Ver original
  1. $dir = opendir("/iconos/");
  2. $archivos = array();
  3. while ($arch = readdir($dir))
  4.   if (is_file("/iconos/".$arch))
  5.     $archivos[] = $arch;
  6.    $i = 0;
  7.    foreach($archivos as $logicaaaaaaaaaaaaaaa){
  8.    echo '
  9.     <img src="iconos/'.$logicaaaaaaaaaaaaaaa.'" width="34" height="22" />
  10.     ';
  11.         if($i == 12)  '<br />';
  12.     if($i == 12) $i = 0;
  13.     $i++;
  14. }

bien esta forma no esta bien, observen que estoy dando una asignación y la variable tomara el valor que presisa (requerido)
pero php evalua false incluso un directorio de nombre "0" y si esto sucede el bucle se pararia, asi que lo paso asi:

Código PHP:
Ver original
  1. $dir = opendir("/iconos/");
  2. $archivos = array();
  3. while (($arch = readdir($dir)) !== false)
  4.   if (is_file("/iconos/".$arch))
  5.     $archivos[] = $arch;
  6.    $i = 0;
  7.    foreach($archivos as $logicaaaaaaaaaaaaaaa){
  8.     echo '
  9.     <img src="iconos/'.$logicaaaaaaaaaaaaaaa.'" width="34" height="22" />
  10.     ';
  11.         if($i == 12)'<br />';
  12.     if($i == 12) $i = 0;
  13.     $i++;
  14. }

ahora lo que quedaria es tomar la extension de archivos que quiero listar entonces lo deje asi:

Código PHP:
Ver original
  1. $dir = opendir("/iconos/");
  2. $archivos = array();
  3. while (($arch = readdir($dir)) !== false)
  4. if (is_file("/iconos/".$arch) and strpos($arch, '.png',1)) // se podria usar GLOB_BRACE pero a veces no esta habilitado.
  5.     $archivos[] = $arch;
  6.    $i = 0;
  7.    foreach($archivos as $logicaaaaaaaaaaaaaaa){
  8.     echo '
  9.     <img src="iconos/'.$logicaaaaaaaaaaaaaaa.'" width="34" height="22" />
  10.     ';
  11.         if($i == 12)'<br />';
  12.     if($i == 12) $i = 0;
  13.     $i++;
  14. }
  15. closedir($dir);

creo que si no me fallo la LOGICAAAAAAAAAAA esta bien...

¿o no?

ENJOY!!!

PD.: en fin es una base de seguro que se puede mejorar.
__________________
Es duro fracasar en algo, pero es mucho peor no haberlo intentado. - Si crees todo lo que lees, mejor no leas -