(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).
此函数没有参数。
成功时返回 true
, 或者在失败时返回 false
。
示例 #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);
}
?>
以上示例会输出:
Is ArrayObject iterable? bool(true) Is IteratorClass iterable? bool(true) Is DerivedClass iterable? bool(true) Is NonIterator iterable? bool(false)