我正在努力使scandir();
函数超出了其书面限制,我需要的不仅仅是它当前支持的 alpha 排序。我需要排序scandir();
结果按修改日期排序。
我尝试了在这里找到的一些解决方案以及来自不同网站的其他一些解决方案,但没有一个对我有用,所以我认为我在这里发布是合理的。
到目前为止我尝试过的是:
function scan_dir($dir)
{
$files_array = scandir($dir);
$img_array = array();
$img_dsort = array();
$final_array = array();
foreach($files_array as $file)
{
if(($file != ".") && ($file != "..") && ($file != ".svn") && ($file != ".htaccess"))
{
$img_array[] = $file;
$img_dsort[] = filemtime($dir . '/' . $file);
}
}
$merge_arrays = array_combine($img_dsort, $img_array);
krsort($merge_arrays);
foreach($merge_arrays as $key => $value)
{
$final_array[] = $value;
}
return (is_array($final_array)) ? $final_array : false;
}
但是,这似乎对我不起作用,它只返回 3 个结果,但它应该返回 16 个结果,因为文件夹中有 16 个图像。
function scan_dir($dir) {
$ignored = array('.', '..', '.svn', '.htaccess');
$files = array();
foreach (scandir($dir) as $file) {
if (in_array($file, $ignored)) continue;
$files[$file] = filemtime($dir . '/' . $file);
}
arsort($files);
$files = array_keys($files);
return $files;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)