基本上我有一个php脚本,列出目录中的所有文件并创建指向它们的链接。然而,它似乎以非常随意的方式对文件进行排序(不按字母顺序/按日期/按大小等顺序排列......)。 php命令文件的方式是什么?有没有办法改变这个?
<?php
$orig = "/var/www/phplist";
if ($dir = opendir($orig)) {
echo "from: $orig";
echo "<br><br>";
while ($file = readdir($dir)) {
$ok = "true";
$filename = $file;
if ($file == "."){
$ok = "false";
}
else if ($file == ".."){
$ok = "false";
}
if ($ok == "true"){
echo "<a href= '/phplist/$file'>$filename</a>";
echo "<br>";
}
}
closedir($dir);
}
?>
答案 0 :(得分:2)
此功能的documentation说明了您要找的内容:
返回目录中下一个条目的名称。条目是 按文件系统存储它们的顺序返回。
根据文件系统的不同,文件可能会保留它们的创建顺序(FAT);可能按字母顺序排序(NTFS);可能会根据他们在hash table(ext4)中的位置进行排序;或其他各种方式。
如果您需要特定订单中的文件,请查看scandir,其中包含指定排序顺序的参数。