php目录中文件夹和子文件夹的下拉列表


php dropdown list of folders and sub folders inside a directory

我希望构建一个php函数,该函数将列出特定目录中的所有文件夹和子文件夹,但转义列表中的某个目录文件夹/子文件夹。

 $dir = "directory_to_scan_for_folders"
 $escape_folder = "folder_to_escape";
     function listFolders($dir) {
             $items = glob($dir . '/*', GLOB_ONLYDIR);
             for ($i = 0; $i < count($items); $i++) {
                 if (is_dir($items[$i])) {
                     $add = glob($items[$i] . '/*',GLOB_ONLYDIR);
                     $items = array_merge($items, $add);
                 }
             }
             return $items;
         }

我已经能够用上面的函数列出所有文件夹,但不知道如何从列表中转义$escapefolder文件夹及其子文件夹。

注:"escape_folder"是指文件夹我不想在列表中显示。

假设"转义文件夹"是指您不想在列表中看到的文件夹,请在if (is_dir($items[$i])) {:之后立即插入以下行

if ($escape_folders == $items[$i]) continue;

但是看看foreach而不是for,正如petraszd所说,如果可以的话,你可能想看看目录迭代器。在这种情况下,您将使用:

if ($escape_folders == $file->getBasename()) continue;