elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Ordenar archivos de un directorio por fecha
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ordenar archivos de un directorio por fecha  (Leído 5,584 veces)
177600531

Desconectado Desconectado

Mensajes: 134


Forever in Darkness


Ver Perfil
Ordenar archivos de un directorio por fecha
« en: 11 Febrero 2013, 22:23 pm »

Bueno pues como dice el titulo del post lo que intento hacer es ordenar los archivos de un directorio por fecha pero no me sale lo he intentado con la función filemtime pero sin resultados, llevo ya medio día intentando por todos los medios ordenarlos y no lo consigo también he buscado en google unas cuantas horas. Agradeceria mucho que alguien que sepa más php que yo me ayudara con este problema que tengo, ósea mostrar los archivos de un directorio pero ordenarlos por fecha, el ultimo archivo subido que sea el primero y etc…

Gracias con antelación.

Esto es lo que tengo de momento.

Código
  1. <?php
  2. if ($gestor = opendir('files')) {
  3. echo "<ul>";
  4.    while (false !== ($arch = readdir($gestor))) {
  5.   if ($arch != "." && $arch != "..") {
  6.   echo "<li><a href=\"files/".$arch."\" class=\"linkli\">".$arch."</a></li>\n";
  7.   }
  8.    }
  9.    closedir($gestor);
  10. echo "</ul>";
  11. }
  12. ?>


En línea

EFEX


Desconectado Desconectado

Mensajes: 1.171


"Dinero Facil"


Ver Perfil WWW
Re: Ordenar archivos de un directorio por fecha
« Respuesta #1 en: 11 Febrero 2013, 22:58 pm »

Código
  1. <?php
  2. if ($gestor = opendir('files/')) {
  3. while (false !== ($arch = readdir($gestor))) {
  4. if ($arch != "." && $arch != "..") {
  5. $archivos[filemtime($arch)] = $arch;  // Hacemos un listado de archivos junto con su fecha de modificacion
  6. }
  7. }
  8. closedir($gestor);
  9. echo "<ul>";
  10. sort($archivos, SORT_NUMERIC);  //Ordenamos por fecha
  11. foreach ($archivos as $key => $archivo) {
  12. $fecha = date('F d Y, H:i:s',filemtime($archivo));  //Obtenemos la fecha en formato de mes, dia, año, hora, minutos, segundos
  13. echo "<li><a href=\"files/".$archivo."\" class=\"linkli\">".$archivo."</a></li> Fecha ".$fecha."\n";
  14. }
  15. echo "</ul>";
  16. }
  17. ?>
  18.  


En línea

177600531

Desconectado Desconectado

Mensajes: 134


Forever in Darkness


Ver Perfil
Re: Ordenar archivos de un directorio por fecha
« Respuesta #2 en: 12 Febrero 2013, 12:20 pm »

Gracias por tu ayuda, la verdad es que ya lo había resuelto, siempre me saltaba un warning en la función filemtime pero hacia su trabajo al final he resuelto el problema con un:
Código
  1. <?
  2. ?>

Dejo el code con el que al final resolví el problema también por si a alguien le sirve en un futuro y que no se pase comiéndose el coco un día entero. Gracias por todo.

Saludos.

Código
  1. <?php
  2. $directorio = 'files';
  3. function ordenar($a,$b){
  4. global $directorio;
  5. $a = filemtime($directorio.$a);
  6. $b = filemtime($directorio.$b);
  7. if ($a == $b) {
  8. return 0;
  9. }
  10. return ($a < $b) ? -1 : 1;
  11. }
  12. $dir="files";  
  13. $directorio = opendir($dir);  
  14. while ($archivo = readdir($directorio)) {  
  15. if ($archivo=="." || $archivo=="..") { echo " "; } else {  
  16. $archivos[$archivo] = $archivo;
  17. }
  18. }  
  19. ksort ($archivos);
  20. usort($archivos, "ordenar");
  21. foreach ($archivos as $archivo) {  
  22. echo "<a href=\"files/".$archivo."\" class=\"linkli\">".$archivo."</a><br>";
  23. }
  24. ?>

En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ordenar galería de imagenes por fecha.
PHP
Joystickoso 2 2,520 Último mensaje 24 Abril 2009, 02:20 am
por Joystickoso
ListView [Ordenar por Fecha]
Programación Visual Basic
e500 2 5,847 Último mensaje 30 Julio 2010, 19:18 pm
por e500
Script: Personalizar ruta de directorio con fecha personalizada
Scripting
Dcg29 0 1,447 Último mensaje 19 Noviembre 2014, 11:08 am
por Dcg29
SQL: quitar id's repetidos y ordenar por fecha
Bases de Datos
JonaLamper 1 1,714 Último mensaje 15 Septiembre 2016, 19:30 pm
por ivancea96
Ordenar archivos de directorio
PHP
gabrielbdmr 1 2,205 Último mensaje 12 Diciembre 2016, 02:05 am
por kingcreek
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines