Ich weiß, dass glob
für alle Dateien sehen kann oder nur alle Verzeichnisse in einem Ordner:Gibt es eine Möglichkeit, um nur Dateien zu glob()?
echo "All files:\n";
$all = glob("/*");
var_dump($all);
echo "Only directories\n";
$dirs = glob("/*", GLOB_ONLYDIR);
var_dump($dirs);
Aber ich habe etwas zu finden, nur Dateien in einer einzigen Zeile effizient nicht gefunden.
$files = array_diff(glob("/*"), glob("/*", GLOB_ONLYDIR));
funktioniert gut, aber liest Verzeichnis zweimal (auch wenn es some optimizations ist, die das zweite Surfen schneller machen).
Sie können 'glob (" *. * ")' Dies funktioniert jedoch nicht, wenn ein Ordner ein '.' darin enthält oder eine Datei keine Erweiterung hat. –