El siguiente código es parte de una función para capturar 5 archivos de imagen de un directorio determinado.¿Cómo obtener los archivos X más nuevos de un directorio en PHP?
Por el momento readdir devuelve las imágenes 'en el orden en que las almacena el sistema de archivos' según el spec.
Mi pregunta es, ¿cómo puedo modificarla para obtener las últimas 5 imágenes? Ya sea basado en la fecha last_modified
o el nombre del archivo (que se parece a 0000009-16-5-2009.png, 0000012-17-5-2009.png, etc.).
if ($handle = opendir($absolute_dir))
{
$i = 0;
$image_array = array();
while (count($image_array) < 5 && (($file = readdir($handle)) !== false))
{
if ($file != "." && $file != ".." && $file != ".svn" && $file != 'img')
{
$image_array[$i]['url'] = $relative_dir . $file;
$image_array[$i]['last_modified'] = date ("F d Y H:i:s", filemtime($absolute_dir . '/' . $file));
}
$i++;
}
closedir($handle);
}