Клас RecursiveCallbackFilterIterator

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

Вступ

Огляд класів


    
     class RecursiveCallbackFilterIterator
    

    
     extends
      CallbackFilterIterator
    

    
     implements
      RecursiveIterator {

    /* Методы */
    
   public __construct(RecursiveIterator $iterator, callable $callback)

    public getChildren(): RecursiveCallbackFilterIterator
public hasChildren(): bool


    /* Наследуемые методы */
    public CallbackFilterIterator::accept(): bool

    public FilterIterator::accept(): bool
public FilterIterator::current(): mixed
public FilterIterator::key(): mixed
public FilterIterator::next(): void
public FilterIterator::rewind(): void
public FilterIterator::valid(): bool

    public IteratorIterator::current(): mixed
public IteratorIterator::getInnerIterator(): ?Iterator
public IteratorIterator::key(): mixed
public IteratorIterator::next(): void
public IteratorIterator::rewind(): void
public IteratorIterator::valid(): bool

   }

Приклади

Callback-функція може приймати до трьох аргументів: поточний елемент, поточний ключ та ітератор відповідно.

Приклад #1 Доступні аргументи callback-функції

Loading...

Фільтрація рекурсивного ітератора зазвичай включає дві умови. Перше у тому, щоб дозволити рекурсію. Callback-функція має повертати **true**якщо поточний елемент ітератора має нащадків. Друге - це нормальна умова фільтра, наприклад, перевірка розміру файлу чи розширення, як у наведеному нижче прикладі.

Приклад #2 Простий приклад рекурсивного зворотного виклику

Loading...

Зміст