Foros del Web » Programando para Internet » PHP »

Crear array desde listado

Estas en el tema de Crear array desde listado en el foro de PHP en Foros del Web. Hola, tengo este código para que dada una carpeta me haga un listado de los archivos y carpetas que contiene: Código: function archivos($ruta) {$descriptor = ...
  #1 (permalink)  
Antiguo 29/10/2008, 11:52
Avatar de Freakme  
Fecha de Ingreso: julio-2007
Ubicación: Portugalete
Mensajes: 97
Antigüedad: 16 años, 8 meses
Puntos: 0
Crear array desde listado

Hola, tengo este código para que dada una carpeta me haga un listado de los archivos y carpetas que contiene:

Código:
function archivos($ruta)
  {$descriptor = opendir($ruta);
   while ($entrada = readdir($descriptor))
         {if (is_file($ruta.$entrada))
             {echo $entrada."<br />";}
         }
closedir($descriptor);
  }
  
function carpetas($directorio)
  {$descriptor = opendir($directorio);
   while ($carpeta = readdir($descriptor))
         {if (is_dir($directorio.$carpeta))
             {if ($carpeta!= '.' and $carpeta!='..')
                 {echo $directorio.$carpeta."<br />";
                  $ruta=$directorio.$carpeta."/";
                  archivos($ruta);
                 }
             }
         }
closedir($descriptor);
  }

$inicio="imagenes/";
archivos ($inicio);
carpetas ("imagenes/");
Lo que no consigo es crear arrays que me almacenen lo que hay dentro de cada carpeta. Ahora sé que para crear el array con el nombre de la carpeta correspondiente tendría que poner algo como:
$$carpeta
he probado varias formas pero no consigo que me genere arrays que almacenen los archivos de cada carpeta.

¿Alguien puede ayudarme?

Gracias.
  #2 (permalink)  
Antiguo 29/10/2008, 12:22
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Crear array desde listado

Umm, antes de recorrer el directorio creas el array:

${$carpeta} = array();

Y luego vas añadiendo los items con array_push.
  #3 (permalink)  
Antiguo 30/10/2008, 09:59
Avatar de Freakme  
Fecha de Ingreso: julio-2007
Ubicación: Portugalete
Mensajes: 97
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: Crear array desde listado

Gracias, perdona por no contestar antes. Ya he solucionado ese problema gracias a ti, ahora tengo otro...
Código:
function archivos($ruta,$nombre)
  {$$nombre=array();
   $descriptor = opendir($ruta);
   while ($entrada = readdir($descriptor))
         {if (is_file($ruta.$entrada))
             {echo $entrada."<br />";
              array_push($$nombre,$entrada);
             }
...
Ahora sí me crea los arrays, con los nombres de las carpetas y tal, pero cuando después hago un var_dump de lo que debería ser el array, me dice que NULL.
Es decir, una de las carpetas se llama "fotografia", por ejemplo, este código me crea el array "$fotografia", que contiene las fotos que hay en esa carpeta. Pero después hago un var_dump($fotografia); y me dice que NULL.

ayuda...
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




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