(PHP 7 >= 7.2.0)
ReflectionClass::isIterable — Check whether this class is iterable
public ReflectionClass::isIterable ( ) : bool
Check whether this class is iterable (i.e. can be used inside foreach).
This function has no parameters.
Returns true
on success or false
on failure.
Example #1 Basic ReflectionClass::isIterable() Usage
<?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 "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)
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/reflectionclass.isiterable.php