#1 2008.02.24 20:49

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

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

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

Неактивен

#2 2008.02.24 21:09

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

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

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?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
Сообщений: 6543
Карма: 108
Профиль Веб-сайт

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

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

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?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
Сообщений: 6543
Карма: 108
Профиль Веб-сайт

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

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?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.009 s