function get files (directories) list with recursion
<?php
function getFiles ($path, $mode = 'FILES', &$result = [])
{
if (substr($path, -1) != DIRECTORY_SEPARATOR) {
$path .= DIRECTORY_SEPARATOR;
}
$items = scandir($path);
foreach ($items as $item) {
$full_name = $path . $item;
if (is_dir($full_name) & $item != '.' & $item != '..') {
if ($mode == 'DIRS') {
$result[] = $full_name;
getFiles($full_name, 'DIRS', $result);
}
if ($mode == 'FILES') {
getFiles($full_name, 'FILES', $result);
}
}
if ($mode == 'FILES' & is_file($full_name)) {
$result[] = $full_name;
}
}
return $result;
}
$path = 'c:\OSPanel\modules\conemu';
$dirs = getFiles($path, 'DIRS');
$files = getFiles($path);
var_dump($dirs);
var_dump($files);