如何排序&显示文件夹内的文件和文件夹


How to sort & display files and folders within folder

那么,这是我目前的代码:

<?php
$path = 'Files';
$scan = scandir($path);
foreach($scan as $file)
  switch ($file) {
      case '.':
        echo "";
        break;
       case '..':
        echo "";
        break;
       case 'Thumbs.db':
        echo "";
        break;
      default:
        if (strpos($file, '.') == false) {
            echo 'folder.jpg';
        } else {
            echo  'file.jpg';
        }
    echo ' - <a href="'.$path.'/'.$file.'">'.$file.'</a></br>';
    break;
}
?>

,这个想法是在过滤掉'。’、‘……'和'Thumbs.db',它显示文件夹的其余项目,旁边有文件夹或文件图标。
我的问题是,我怎样才能把所有的文件夹列在上面,文件列在下面呢?
我的想法是先对文件夹进行全局化,然后再对文件进行全局化,这样它们就能一个接一个地列出来。但是我不知道该怎么写

我将创建两个数组,一个用于文件,另一个用于文件夹

$folders = array_filter($scan, function($f) {
    return $f != '.' && $f != '..' && is_dir($f);
});
$files = array_filter($scan, function($f) {
    return $f != 'Thumbs.db' && is_file($f);
});

然后你可以遍历每个数组,先遍历文件夹,然后遍历文件。