PHP怎么判断一个文件夹下的所有文件,哪个创建的时间离当前时间最接近

也就是说我要从服务器取一个离当前时间最近的XML文件到PHP里面
有函数可以用吗
我们做的手机客户端 用户每登陆一次 都会把通讯录以[用户名]_[登陆时间].xml格式插入用户名对应文件夹下。
也就是说我要从服务器取一个离当前时间最近的XML文件解析到PHP里面

<?php
// 路径 + 用户名
$dir = "C:/users/kyoabczhx";
// 去掉 . 和 ..
$items = array_diff(scandir($dir), array('.', '..'));

// 初始 xml 文件数组
$xml_files = array();
// 循环每一个文件
foreach($items as $file) {
// 如果文件以 xml 结尾
if(strtolower(pathinfo($file, PATHINFO_EXTENSION)) == 'xml') {
// 保存为 array(文件最后修改时间 => 文件路径);
// 例如: 1313381841=>"C:/users/kyoabczhx/kyoabczhx_1313381841.xml"
$xml_files[filemtime("$dir/$file")] = "$dir/$file";
}
}

// 以最后修改时间排列数组
asort($xml_files);

// $xml_files[0] 就是离当前时间最近一个 xml 文件
echo $xml_files[0];
?>

注意,代码里用到了一个 scandir 函数,这是 PHP5 的,如果你的服务器不支持,那还要麻烦一点。你自己能搞清楚的话我就不写了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-13
asort($xml_files);

应为
rsort($xml_files);

sort() 函数用于对数组单元从低到高进行排序。
rsort() 函数用于对数组单元从高到低进行排序。
asort() 函数用于对数组单元从低到高进行排序并保持索引关系。
arsort() 函数用于对数组单元从高到低进行排序并保持索引关系。
ksort() 函数用于对数组单元按照键名从低到高进行排序。
krsort() 函数用于对数组单元按照键名从高到低进行排序。
第2个回答  2011-08-15
??????????