Foros del Web » Programando para Internet » PHP »

leer el último archivo subido a un directorio

Estas en el tema de leer el último archivo subido a un directorio en el foro de PHP en Foros del Web. Hola de nuevo a todos/as: Os agradecería me ayudarais en lo siguiente: ¿Como puedo leer el último archivo subido a un directorio?. Tengo este código ...
  #1 (permalink)  
Antiguo 26/11/2008, 15:26
 
Fecha de Ingreso: agosto-2005
Mensajes: 70
Antigüedad: 18 años, 8 meses
Puntos: 0
De acuerdo leer el último archivo subido a un directorio

Hola de nuevo a todos/as:

Os agradecería me ayudarais en lo siguiente:

¿Como puedo leer el último archivo subido a un directorio?. Tengo este código que me lee todos los archivos, pero sólo quiero el último.

Código PHP:
<?
function leerDirectorio($cual)
{
    
//        creo un manejador de directorios, y lo asigno a la variable $directorio
    
$directorio opendir($cual);
    
//        bucle while para leer los archivos/directorios y poner el resultado en un array
    
while($item_del_directorio readdir($directorio))
    {
        
$archivos[] = $item_del_directorio;
    }
    
//        cierro el directorio
    
closedir($directorio);     
    
//        retorno el array de archivos
    
return $archivos;
}


?>
Para leer el primero pondría

$archivos[0] = $item_del_directorio;

pero y el último?.


Mil gracias:

Lyra
  #2 (permalink)  
Antiguo 26/11/2008, 19:00
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: leer el último archivo subido a un directorio

Hola Lyra mira esta función creo que te puede servir array_pop().


Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #3 (permalink)  
Antiguo 26/11/2008, 19:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: leer el último archivo subido a un directorio

bueno, eso no te entrega precisamente el ultimo archivo subido... sino el ultimo listado que no es lo mismo

para averiguar cual fue el ultimo en subirse, deberás usar funciones de fecha y hora, así como obtener el timestamp de los archivos...

luego, comparas estos datos... el que te de una menor diferencia, es relativamente nuevo...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 26/11/2008, 19:11
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: leer el último archivo subido a un directorio

Tienes razón pateketrueke no me habia fijado bien.



Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #5 (permalink)  
Antiguo 26/11/2008, 22:38
Avatar de uselox  
Fecha de Ingreso: agosto-2008
Ubicación: Lima, Perú
Mensajes: 168
Antigüedad: 15 años, 8 meses
Puntos: 12
Respuesta: leer el último archivo subido a un directorio

Actualmente no es posible cambiar la hora de modificación de un directorio con esta función bajo Windows.
http://www.php.net/touch
Código PHP:
touch(); 
-.-

Última edición por uselox; 28/11/2008 a las 15:23
  #6 (permalink)  
Antiguo 26/11/2008, 23:24
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 9 meses
Puntos: 102
Respuesta: leer el último archivo subido a un directorio

Cita:
Iniciado por lyra Ver Mensaje
Para leer el primero pondría

$archivos[0] = $item_del_directorio;
Aplica lo mismo que ya dijo pateketrueke:

Cita:
Iniciado por pateketrueke Ver Mensaje
bueno, eso no te entrega precisamente el ultimo archivo subido... sino el ultimo listado que no es lo mismo
Lo que tú haces, lyra, igual solo es recuperar el primero de la lista, no tiene un orden específico.

Creo que buscas la función filemtime(); puedes guardar esa información asociada al nombre de tu archivo en el arreglo (un conjunto de pares timestamp/nombre sería útil) y ocupar las funciones de ordenado de matrices para, ahora sí, obtener el último archivo creado (modificado); se supondría no habría de editarse algún otro.

www.php.net/filemtime
www.php.net/sort

Suerte


Cita:
Iniciado por uselox Ver Mensaje
Actualmente no es posible cambiar la hora de modificación de un directorio con esta función bajo Windows.
¿?
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #7 (permalink)  
Antiguo 30/11/2008, 13:36
 
Fecha de Ingreso: agosto-2005
Mensajes: 70
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: leer el último archivo subido a un directorio

Gracias a todos y perdonar el retraso en contestar.

Lo he solucionado con la funcion sort().

En realidad lo que necesitaba era ordenar la lista de archivos subidos al servidor y crear un índice desde el primero al últimos subidos.

Esto era para después hacer una salida xml. Antes esta salida me la hacia al revés, es decir ordenada del último al primer archivo subidos, y a la hora de cargar el primer fichero de una foto grande en flash, sin pinchar la miniatura, no lo hacía bien. Ahora ya está solucionado.

Mil gracias de nuevo.

Lyra
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:31.