PHP 8.1.0 RC 2 available for testing

RecursiveIteratorIterator::getDepth

(PHP 5, PHP 7, PHP 8)

RecursiveIteratorIterator::getDepthObtener la profundidad actual de la iteración recursiva

Descripción

public RecursiveIteratorIterator::getDepth(): int
Advertencia

Esta función no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

La profundidad actual de la iteración recursiva.

add a note add a note

User Contributed Notes 1 note

up
3
spicypixel at gmail dot com
3 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;
}
?>
To Top