class DirCommand
{
private $data;
public function dir($path)
{
foreach (glob("{$path}*/", GLOB_ERR) as $k => $dir) {
$this->data[] = $dir;
$this->dir($dir);
}
return $this->data;
}
}
$dir = new DirCommand();
$dirs = $dir->dir(__DIR__);
// 函数版
function dir($path)
{
$d = [];
foreach (glob("{$path}*/", GLOB_ERR) as $k => $dir) {
$d[] = $dir;
$result = dir($dir);
if ($result) {
$d = array_merge($d, $result);
}
}
return $d;
}
var_dump(dir(__DIR__));
die;