#1 2008.02.24 20:49

Muz
Участник
Зарегистрирован: 2008.02.24
Сообщений: 1
Карма: 0
Профиль

Сортировка файлов по времене

Надо для форума. Вобщем есть папка там файлы . Надо чтобы они выводились на страницу сортируясь по времени , новые вверху .

Неактивен

#2 2008.02.24 21:09

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: Сортировка файлов по времене

Код:

1
span style="color: #0000BB"><?php$dir = 'dir/'; // Папка$f = opendir($dir);$arr = array();// создаем массив, где ключи - это время изменения файлаwhile($fo = readdir($f)){if($fo[0]!='.'){$arr[filemtime($dir.$fo)] = $fo;}}closedir($f);// получаем ключи массива$keys = array_keys($arr);// сортируемrsort($keys);$sizeof = sizeof($keys);// подставляем отсортированные ключи в первый массивfor($i=0; $i<$sizeof; ++$i){print $arr[$keys[$i]].'<br/>';}?>

Хотя мне самому жутковато от этого кода smile целых 2 цикла =/ как по другому отсортировать я не знаю... если кто-то знает лучший вариант решения данной проблемы, буду очень благодарен

Отредактировано Gemorroj (2008.02.25 08:53)

Неактивен

#3 2008.02.25 08:55

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: Сортировка файлов по времене

вот еще вариант придумал. получше будет

Код:

1
span style="color: #0000BB"><?php$dir = 'dir/'; // Папка$f = opendir($dir);$arr = array();// создаем массив, где ключи - это время изменения файлаwhile($fo = readdir($f)){if($fo[0]!='.'){$arr[filemtime($dir.$fo)] = $fo;}}closedir($f);// сортируемkrsort($arr);// печатаем значения массиваforeach($arr as $var){print $var.'<br/>';}?>

Отредактировано Gemorroj (2008.02.25 09:31)

Неактивен

#4 2008.02.27 11:25

Caspеr
Гость

Re: Сортировка файлов по времене

Как вывести один самый новый файл?

#5 2008.02.27 11:44

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6593
Карма: 107
Профиль Веб-сайт

Re: Сортировка файлов по времене

Код:

1
span style="color: #0000BB"><?php$dir = 'dir/'; // Папка$f = opendir($dir);$arr = array();// создаем массив, где ключи - это время изменения файлаwhile($fo = readdir($f)){if($fo[0]!='.'){$arr[filemtime($dir.$fo)] = $fo;}}closedir($f);// сортируемkrsort($arr);$arr = array_values($arr);print $arr[0];?>

Неактивен

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.2
0.010 s