RecursiveCallbackFilterIterator::hasChildren

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

RecursiveCallbackFilterIterator::hasChildren内部イテレータの現在の要素が子を持つかどうかを調べる

説明

public RecursiveCallbackFilterIterator::hasChildren(): bool

現在の要素が子を持つときに true、それ以外の場合に false を返します。

パラメータ

この関数にはパラメータはありません。

戻り値

現在の要素が子を持つときに true、それ以外の場合に false を返します。

例1 RecursiveCallbackFilterIterator::hasChildren() の基本的な使用例

<?php

$dir = new RecursiveDirectoryIterator(__DIR__);

// 再帰的に XML ファイルを処理します
$files = new RecursiveCallbackFilterIterator($dir, function ($current, $key, $iterator) {
    // ディレクトリの再帰処理を許可します
    if ($iterator->hasChildren()) {
        return TRUE;
    }
    // XML ファイルかどうかを調べます
    if (!strcasecmp($current->getExtension(), 'xml')) {
        return TRUE;
    }
    return FALSE;
});

?>

参考