我的代码:
<?php
$dirs = array_filter(glob('*'), 'is_dir');
$files = array_filter(glob('*'), 'is_file');
$all = $dirs + $files;
foreach ($all as $value){
echo '<li><a href="'.$value.'">'.$value.'</a></li>';
}
?>
这会以随机顺序返回所有文件和文件夹:
Array
(
[2] => New folder
[6] => dir
[7] => dir1
[8] => dir2
[9] => dir3
[0] => A_test.txt
[1] => Index.php
[3] => app.exe
[4] => b_test
[5] => delete.php
[10] => hello.png
[11] => z_test.txt
)
sort()
无效。我想按默认顺序对它们进行排序。
答案 0 :(得分:0)
就像Half Crazed所提到的那样,在回复文件之前,你只是缺少文件的sort()。
<?php
$dirs = array_filter(glob('*'), 'is_dir');
$files = array_filter(glob('*'), 'is_file');
$all = $dirs + $files;
sort($all); //sort them
foreach ($all as $value){
echo '<li><a href="'.$value.'">'.$value.'</a></li>';
}
?>