ReflectionClass::isIterable

(PHP 7 >= 7.2.0, PHP 8)

ReflectionClass::isIterableVerifique se esta classe é iterável

Descrição

public ReflectionClass::isIterable(): bool

Verifique se esta classe é iterável (ou seja, pode ser usada dentro do foreach).

Parâmetros

Esta função não possui parâmetros.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Exemplos

Example #1 Uso básico 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 "$class é iterável? ";
    dump_iterable($class);
}
?>

O exemplo acima produzirá:

ArrayObject é iterável? bool(true)
IteratorClass é iterável? bool(true)
DerivedClass é iterável? bool(true)
NonIterator é iterável? bool(false)

Veja Também