我正在尝试从名称为数字的文件夹中对文件进行排序。 我一直试图解决这个问题很长一段时间,但我还没有找到真正有用的解决方案。
它的排序 1 10 11 2 20 等
我想让它做一个自然的排序。 1 2 3 4 五 6
<?php
foreach(glob(dirname(__FILE__) . '/4-2-baggrund-gentag-gradient-filer/*') as $filenameselsyvogfyrre){
$filenameselsyvogfyrre = basename($filenameselsyvogfyrre);
$filenameselotteogfyrre = pathinfo($filenameselsyvogfyrre, PATHINFO_FILENAME); // returns 'filename'
echo "<option class='formstyle' value='" . $filenameselotteogfyrre . "'>".$filenameselotteogfyrre."</option>";}
?>
答案 0 :(得分:1)
我建议您使用natsort
功能。
首先,您将所有项目作为数组,然后排序,然后执行foreach
:
$files = glob(dirname(__FILE__) . '/4-2-baggrund-gentag-gradient-filer/*');
natsort($files);
foreach ($files as $file) {
echo $file . PHP_EOL;
}