(PHP 5 >= 5.1.0, PHP 7)
RecursiveArrayIterator::hasChildren — Devuelve si la entrada actual es un array o un objeto
Devuelve si la entrada actual es un array o un object para que un iterador puede ser obtenido a través de RecursiveArrayIterator::getChildren().
Esta función no tiene parámetros.
   Devuelve TRUE si la entrada actual es un array o un object, 
   en caso contrario FALSE.
  
Ejemplo #1 Ejemplo de RecursiveArrayIterator::hasChildren()
<?php
$fruits = array("a" => "limon", "b" => "naranja", array("a" => "manzana", "p" => "pera"));
$iterator = new RecursiveArrayIterator($fruits);
while ($iterator->valid()) {
    // Comprueba si hay hijos
    if ($iterator->hasChildren()) {
        // imprime todos los hijos
        foreach ($iterator->getChildren() as $key => $value) {
            echo $key . ' : ' . $value . "\n";
        }
    } else {
        echo "No hijos.\n";
    }
    $iterator->next();
}
?>
El resultado del ejemplo sería:
No hijos. No hijos. a : manzana p : pera