ReflectionClass::isIterable

(PHP 7 >= 7.2.0)

ReflectionClass::isIterableVérifie si cette classe est itérable

Description

public ReflectionClass::isIterable ( void ) : bool

Vérifie si cette classe est itérable (c'est à dire qu'elle peut être utilisée dans foreach).

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

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)

Voir aussi