Read files from a folder with php | Leer archivos de una carpeta con php

vamos a usar tres funciones de php.

//is_dir() devuelve true si es un directorio | verify if is a directory
//opendir($myfolder)

// Abre directorio | open directory
//opendir()

//esta funcion lee los archivos en el directorio | this function can read the files on directory
//readdir()

con estas simples funciones vamos a crear un lector en esta caso para que nos muestre archivos .ZIP, .PDF y archivos tipo .JPG y nos genere un link hacia cada uno de estos archivos.

este es el codigo completo | this is the complete code

<?php
//folder Name
$myfolder = ‘files’;

//open folder and read content
if (is_dir($myfolder)) {
if ($read = opendir($myfolder)) {
while ($myfile = readdir($read)) {

//verify filetype before of show
if ((strpos($myfile, “.zip”) > 1) || (strpos($myfile, “.pdf” ) > 1) || (strpos($myfile, “.jpg” ) > 1) ) {
//zip
if(strpos($myfile,”.zip”)){
$present =’<img src=”zip_icon.jpg” alt=”zip” /><br />’.$myfile.”;
}
//pdf
elseif (strpos($myfile, “.pdf”)){
$present =’<img src=”pdf_icon.jpg” alt=”pdf” /><br />’.$myfile.’ ‘;
}
//Image
elseif (strpos($myfile, “.jpg”)){$present =’<img src=”‘.$myfolder.’/’.$myfile.’” width=”40″ height=”40″ alt=”image” /><br />’.$myfile.”;
}

echo ‘<div class=”file”><a href=”‘.$myfolder.’/’.$myfile.’”>’.$present.’</a></div>’;
}

}
//close folder
closedir($read);
}
}

?>

Descargar | Download

folder reader

folder reader

    • RaydenCruz
    • November 24th, 2009

    Como en la galeria de imagenes sin base de datos. Hay alguna forma de que nos muestre los archivos en orden alfabetico? Gracias.

  1. Hola, asi al vuelo y de forma rapida se me ocurre lo siguiente.
    pueden volcarse los nombres dentro de un array y mediante alguna funcion como sort($array) ordenarlos.

    estoy algo corto de tiempo en estos dias, sino lo probaba :( , si llegas a probarlo me cuentas?

    Salu2

    • ray0
    • April 20th, 2010

    una pregunta porque no me deja leer archivos en una unidad de red conectada en la computadora????

    gracias por lo demas funciona de maravilla =)

  2. humm comprendo poco como lo estaras probando pero la unidad de red solo la estas poniendo como ruta o tienes en la unidad corriedo php y funcionando apache para poder acceder via browser??

    Salu2

  1. September 2nd, 2008