(PHP 7 >= 7.2.0, PHP 8)
ReflectionClass::isIterable — Check whether this class is iterable
Check whether this class is iterable (i.e. can be used inside foreach).
This function has no parameters.
Example #1 Basic ReflectionClass::isIterable() Usage
<?phpclass 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 "Is $class iterable? "; dump_iterable($class);}?>
The above example will output:
Is ArrayObject iterable? bool(true) Is IteratorClass iterable? bool(true) Is DerivedClass iterable? bool(true) Is NonIterator iterable? bool(false)