PHP-循环文件夹-yield-生成器
<?php
define(DS, DIRECTORY_SEPARATOR);
function gen_dir($path='.'){
$c_dir = opendir($path);
while ($dir = readdir($c_dir)){
yield $dir;
};
closedir($c_dir);
}
function loop_dir($path='.'){
foreach (gen_dir($path) as $dir){
if (!in_array($dir, ['.', '..']) and is_dir($path.DS.$dir)){
loop_dir($path.DS.$dir);
continue;
}
echo $path.DS.$dir, "\r\n";
}
}
loop_dir(__DIR__.DS);

浙公网安备 33010602011771号