<?php
/**
* Created by phpStorm.
* User: BinWei
* Date: 2019/6/2
* Time: 21:37
*/
/**
* @description 递归遍历文件夹
* @param $dir
* @return array
* @author BinWei
*/
function recursionDir($dir)
{
$result = [];
$handle = opendir($dir);
if ($handle) {
while (($file = readdir($handle)) !== false) {
if ($file != '.' && $file != '..') {
$current_path = $dir . DIRECTORY_SEPARATOR . $file;
if (is_dir($current_path)) {
$result[$current_path] = recursionDir($current_path);
} else {
$result['file'][] = $current_path;
}
}
}
closedir($handle);
}
return $result;
}
$dir = 'D:/recursionTest';
$rs = recursionDir($dir);
echo(json_encode($rs));
示例结果