RecursiveIteratorIterator::getDepth
(PHP 5, PHP 7, PHP 8)
RecursiveIteratorIterator::getDepth — 再帰的なイテレーションにおける現在の深さを取得する
パラメータ
この関数にはパラメータはありません。
戻り値
再帰的なイテレーションにおける現在の深さを返します。
+add a note
User Contributed Notes 1 note
spicypixel at gmail dot com ¶
6 years ago
Example to only return directories that are a specified depth in a tree:
<?php
function directory_mapper($path)
{
$maxDepth = 3;
$minDepth = 3;
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($path, RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::SELF_FIRST,
RecursiveIteratorIterator::CATCH_GET_CHILD// Ignore "Permission denied"
);
$iterator->setMaxDepth($maxDepth);
$paths = array($path);
foreach ($iterator as $path => $dir) {
if ($iterator->getDepth() >= $minDepth) {
if ($dir->isDir()) {
$paths[] = $path;
}
}
}
array_shift($paths);
return $paths;
}
?>
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google