Alguna vez se nos ha planteado el problema de de listar el contenido de un directorio o una determinada carpeta utilizando el lenguaje php. Necesitamos además el que los nombres de los archivos estén ordenados por fecha de creación. Pues bien, con este simple código podemos obtenerlo de una manera bien sencilla. Se basa en la creación de un array, ordenarlo por fecha de creación y posteriormente mostrarlo, mediante un la utilización de una lista ordenada de html <li> o mediante una tabla como se haría por ejemplo:
$dir = "../mydir/"; //path o ruta de nuestro directorio chdir($dir); array_multisort(array_map('filemtime', ($files = glob("*.*"))), SORT_DESC, $files); echo "<table>"; foreach($files as $filename) { if($tr==0) { echo "<tr>"; } echo "<td><a href='download.php?path=".$filename."' target='_blank'>".substr($filename, 0, -4)."</a></td>"; $tr++; if($tr==4) { echo "</tr>"; $tr=0; } } echo "</table>";
Donde download.php se trata de la llamada al script para descargar el archivo.