我使用usort()
和filemtime()
按修改日期对文件进行排序,但它会按错误顺序随机返回文件。我想我错过了一些非常简单的东西,但我无法弄清楚什么。使用filemtime()和usort()对文件排序会给出随机结果
usort($user_files, function($a, $b) {
return filemtime($a) > filemtime($b);
});
foreach ($user_files as $f) {
echo $f . "<br />";
}
之后,我上传文件。 Complete code。
当上传文件1.txt
... 10.txt
测试发生了什么事情上显示的结果是:
6.txt
5.txt
4.txt
3.txt
2.txt
1.txt
7.txt Uploaded!
正如预期的那样。然后,当我到达8.txt
:
6.txt
7.txt
5.txt
4.txt
2.txt
3.txt
1.txt
8.txt Uploaded!
还有一次,直到我达到10.txt
这是罚款:
7.txt
8.txt
9.txt
6.txt
5.txt
2.txt
3.txt
4.txt
1.txt
10.txt Uploaded!
虽然ls -t
返回:
10.txt 9.txt 8.txt 7.txt 6.txt 5.txt 4.txt 3.txt 2.txt 1.txt
所以......这是怎么回事有?
Debian Wheezy 7.4, up-to-date.
PHP Version 5.4.4-14+deb7u8
Linux pc 3.2.0-4-amd64 #1 SMP Debian 3.2.54-2 x86_64
FPM/FastCGI
nginx/1.2.1
您的代码从pastebin中消失。 –