FAQ
Me parece que es muy sencillo lo que voy a preguntar, pero en php.net no lo
encontré todavía.
Necesito listar los archivos de un directorio, preguntar por su nombre y
según el caso realizar alguna operación.
La pregunta es que funcion usar para listar los archivos de un directorio
sin saber cuantos ni cuales archivos hay.

Se entiende?.

Emiliano J. Horcada

Search Discussions

  • Emiliano Horcada at Dec 27, 2005 at 5:06 pm
    Encontré este script:

    <?php
    $dir = (isset($_GET['dir']))?$_GET['dir']:"/";
    $directorio=opendir($dir);
    echo "<b>Directorio actual:</b><br>$dir<br>";
    echo "<b>Archivos:</b><br>";
    while ($archivo = readdir($directorio)) {
    if($archivo == '.')
    echo "<a href=\"?dir=.\">$archivo</a><br>";
    elseif($archivo == '..'){
    if($dir != '.'){
    $carpetas = split("/",$dir);
    array_pop($carpetas);
    $dir2 = join("/",$carpetas);
    echo "<a href=\"?dir=$dir2\">$archivo</a><br>";
    }
    }
    elseif(is_dir("$dir/$archivo"))
    echo "<a href=\"?dir=$dir/$archivo\">$archivo</a><br>";
    else echo "$archivo<br>";
    }
    closedir($directorio);
    ?>


    Si alguien conoce algo mejor venga! sino me quedo con este.



    On 12/27/05, Emiliano Horcada wrote:

    Me parece que es muy sencillo lo que voy a preguntar, pero en php.net no
    lo encontré todavía.
    Necesito listar los archivos de un directorio, preguntar por su nombre y
    según el caso realizar alguna operación.
    La pregunta es que funcion usar para listar los archivos de un directorio
    sin saber cuantos ni cuales archivos hay.

    Se entiende?.

    Emiliano J. Horcada
  • Fernando Ortiz at Dec 27, 2005 at 5:09 pm
    Emiliano Horcada escribió:
    Me parece que es muy sencillo lo que voy a preguntar, pero en php.net no lo
    encontré todavía.
    Necesito listar los archivos de un directorio, preguntar por su nombre y
    según el caso realizar alguna operación.
    La pregunta es que funcion usar para listar los archivos de un directorio
    sin saber cuantos ni cuales archivos hay.

    Se entiende?.

    Emiliano J. Horcada

    Hola,

    El ejemplo 1 de esta pagina
    http://mx2.php.net/manual/es/function.opendir.php es precisamente lo que
    tu dices.

    Saludos
  • Rudi Ullon at Dec 27, 2005 at 5:10 pm
    $handle = opendir("./directorio");
    while($file = readdir($handle)){
    echo "<br>".$file;
    }


    Espero te sirva.

    Saludos.



    --
    Rudi O. Ullón B.
    Web Applications Development
  • Vladimir Hernandez at Dec 27, 2005 at 5:12 pm

    Quoting Emiliano Horcada <emilianohorcada@gmail.com>:

    Me parece que es muy sencillo lo que voy a preguntar, pero en php.net no lo
    encontré todavía.
    Necesito listar los archivos de un directorio, preguntar por su nombre y
    según el caso realizar alguna operación.
    La pregunta es que funcion usar para listar los archivos de un directorio
    sin saber cuantos ni cuales archivos hay.

    Se entiende?.

    Emiliano J. Horcada
    Derechito del manual:
    http://www.php.net/manual/es/function.readdir.php

    Ejemplo 1. Listar todos los archivos en un directorio

    Por favor note la forma en que el valor de retorno de dir() es
    chequeado en los
    siguientes ejemplos. Se está probando explícitamente si el valor de retorno
    es idéntico (igual y del mismo tipo que--vea los Operadores de Comparación
    para más información) a FALSE ya que de otra forma, cualquier entrada de
    directorio cuyo nombre evalúe a FALSE detendrá el ciclo (p.ej. un directorio
    llamado "0").
    <?php
    // Note que !== no existia hasta 4.0.0-RC2

    if ($gestor = opendir('/ruta/a/archivos')) {
    echo "Gestor de directorio: $gestor\n";
    echo "Archivos:\n";

    /* Esta es la forma correcto de iterar sobre el directorio. */
    while (false !== ($archivo = readdir($gestor))) {
    echo "$archivo\n";
    }

    /* Esta es la forma EQUIVOCADA de iterar sobre el directorio. */
    while ($archivo = readdir($gestor)) {
    echo "$archivo\n";
    }

    closedir($gestor);
    }
    ?>

    --
    Vladimir Hernández
    http://linuxbaja.org/
  • Gustavo Pardo at Dec 27, 2005 at 5:17 pm

    El Mar 27 Dic 2005 14:00, Emiliano Horcada escribió:
    Me parece que es muy sencillo lo que voy a preguntar, pero en php.net no lo
    encontré todavía.
    Necesito listar los archivos de un directorio, preguntar por su nombre y
    según el caso realizar alguna operación.
    La pregunta es que funcion usar para listar los archivos de un directorio
    sin saber cuantos ni cuales archivos hay.

    Se entiende?.

    Emiliano J. Horcada
    hoy justo estuve buscando eso mismo en el manual:
    http://ar2.php.net/manual/es/class.dir.php (espectacular!!!)
    lo uso para realizar backups.
    --
    Gustavo Pardo
  • Gustavo Lescano at Dec 28, 2005 at 1:23 pm
    Lo podes hacer usando la funcion glob.
    <?php
    foreach (glob("*.txt") as $nombre_archivo) {
    echo "$nombre_archivo tam " . filesize($nombre_archivo) . "\n";
    }
    ?>

    En php.net tenes algunos ejemplos:
    http://ar.php.net/glob

    Saludos

    Gustavo

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedDec 27, '05 at 5:00p
activeDec 28, '05 at 1:23p
posts7
users6
websitephp.net

People

Translate

site design / logo © 2021 Grokbase