正如您所看到的,脚本读取$ currentDir并将其放入$ unsortedDir(所有目录和文件),然后foreach循环将摆脱“。”。和“..”,然后它检查它是一个目录还是一个文件,如果它是一个目录,它将它放在一个名为$ isDir的列表中,如果它是一个文件,它将它放入名为$ isFile的列表中。
但是,它没有检测到admin@admin.com文件夹中的目录...它将所有目录都放在$ isFile
$user = "admin@admin.com";
$currentDir = "uploads/$user/";
$isDir = array();
$isFile = array();
$unsortedDir = scandir($currentDir, 2);
foreach($unsortedDir as $sortDir){
if ($sortDir == "." || $sortDir == ".."){
} else {
if (is_dir($sortDir)){
$isDir[] = $sortDir;
} else {
$isFile[] = $sortDir;
}
}
}
print_r($unsortedDir);echo"<br><br><br>";
print_r($isDir);echo"<br><br><br>";
print_r($isFile);echo"<br>";
这是输出:
数组([0] =&gt;。[1] =&gt; .. [2] =&gt;新文件夹[3] =&gt; pics [4] =&gt; screenshot(2).png [5] =&gt; screenshot(3).png [6] =&gt; screenshot(4).png [7] =&gt; screenshot.png [8] =&gt; Thumbs.db)
Array()
数组([0] =&gt;新文件夹[1] =&gt; pics [2] =&gt; screenshot(2).png [3] =&gt; screenshot(3).png [4] =&gt; screenshot(4).png [5] =&gt; screenshot.png [6] =&gt; Thumbs.db)
答案 0 :(得分:1)
使用is_dir($currentDir . $sortDir)