Reputation: 16719
This line should list all files and subdirectories of $absPath
:
$iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($absPath,
\RecursiveIteratorIterator::SELF_FIRST | \FilesystemIterator::SKIP_DOTS));
But I only get files!
If I remove the \FilesystemIterator::SKIP_DOTS
flag then I get subdirectories too, but with dots appended, eg:
[0] => abc/.
[1] => abc/..
[2] => abc/def/.
[3] => abc/def/..
Does anyone have a clue why this is happening?
Upvotes: 1
Views: 145
Reputation: 781741
You have a flag for RecursiveIteratorIterator
in the arguments of RecursiveDirectoryIterator
.
$iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($absPath,
\FilesystemIterator::SKIP_DOTS), \RecursiveIteratorIterator::SELF_FIRST);
Upvotes: 2