2016-12-30 2 views
0

У меня есть этот скрипт. Он работает, снимая все изображения в папке и создавая веб-страницу. Самая старая картинка сверху и более свежие изображения вниз по странице.Как отсортировать фотографии от самых новых до самых старых?

Как я могу вернуть способ отображения изображений? Я хочу, чтобы новейший был сверху.

<?php 
$folder = 'ute/grabs/'; 
$filetype = '*.*'; 
$files = glob($folder.$filetype); 
$count = count($files); 
echo '<table>'; 
for ($i = 0; $i < $count; $i++) { 
echo '<tr><td>'; 
echo '<a name="'.$i.'" href="#'.$i.'"><img src="'.$files[$i].'" /></a>'; 
echo substr($files[$i],strlen($folder),strpos($files[$i], '.')-strlen($folder)); 
echo '</td></tr>'; 
} 
echo '</table>'; 
?> 

ответ

0

Положите это после глобуса.

usort($files, create_function('$b,$a', 'return filemtime($a) - filemtime($b);')); 

См: glob() - sort by date

Примечание: Я изменил первый аргумент "create_function" в обратном порядке.

+0

Это было здорово. Спасибо. – Bergum

0

Спасибо Icarus3 Это отлично поработало.

Это было окончательное решение:

<?php 
$folder = 'webcam/webcam/ute/grabs/'; 
$filetype = '*.jpg'; 
$files = glob($folder.$filetype); 
usort($files, create_function('$b,$a', 'return filemtime($a) - filemtime($b);')); 
$count = count($files); 
echo '<table>'; 
for ($i = 0; $i < $count; $i++) { 
echo '<tr><td>'; 
echo '<a name="'.$i.'" href="#'.$i.'"><img src="'.$files[$i].'" /></a><br>'; 
echo substr($files[$i],strlen($folder),strpos($files[$i], '.')-strlen($folder)); 
echo '</td></tr>'; 
} 
echo '</table>'; 
?> 
Смежные вопросы