ReflectionClass::isIterable

(PHP 7 >= 7.2.0, PHP 8)

ReflectionClass::isIterableCheck whether this class is iterable

Description

publicReflectionClass::isIterable(): bool

Check whether this class is iterable (i.e. can be used inside foreach).

Parameters

This function has no parameters.

Return Values

Returns true on success or false on failure.

Examples

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)

See Also

To Top