(PHP 7 >= 7.2.0, PHP 8)
ReflectionClass::isIterable — Vérifie si cette classe est itérable
Vérifie si cette classe est itérable (c'est à dire qu'elle peut être utilisée dans foreach).
Cette fonction ne contient aucun paramètre.
   Cette fonction retourne true en cas de succès ou false si une erreur survient.
  
Exemple #1 Utilisation simple de ReflectionClass::isIterable()
<?php
class IteratorClass implements Iterator {
    public function __construct() { }
    public function key() { }
    public function current() { }
    function next() { }
    function valid() { }
    function rewind() { }
}
class DerivedClass extends IteratorClass { }
class NonIterator { }
function dump_iterable($class) {
    $reflection = new ReflectionClass($class);
    var_dump($reflection->isIterable());
}
$classes = array("ArrayObject", "IteratorClass", "DerivedClass", "NonIterator");
foreach ($classes as $class) {
    echo "Est ce que $class est itérable ? ";
    dump_iterable($class);
}
?>
L'exemple ci-dessus va afficher :
Est ce que ArrayObject est itérable ? bool(true) Est ce que IteratorClass est itérable ? bool(true) Est ce que DerivedClass est itérable ? bool(true) Est ce que NonIterator est itérable ? bool(false)