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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  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 6,226 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,888 Último mensaje 24 Abril 2009, 02:20 am
por Joystickoso
ListView [Ordenar por Fecha]
Programación Visual Basic
e500 2 6,824 Último mensaje 30 Julio 2010, 19:18 pm
por e500
Script: Personalizar ruta de directorio con fecha personalizada
Scripting
Dcg29 0 1,898 Último mensaje 19 Noviembre 2014, 11:08 am
por Dcg29
SQL: quitar id's repetidos y ordenar por fecha
Bases de Datos
JonaLamper 1 2,700 Último mensaje 15 Septiembre 2016, 19:30 pm
por ivancea96
Ordenar archivos de directorio
PHP
gabrielbdmr 1 3,343 Último mensaje 12 Diciembre 2016, 02:05 am
por kingcreek
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines