ReflectionClass::isIterable

(PHP 7 >= 7.2.0, PHP 8)

ReflectionClass::isIterableПроверить, является ли класс итерируемым

Описание

public ReflectionClass::isIterable(): bool

Проверяет, реализует ли класс интерфейс Iterator (т.е. можно ли использовать его в foreach).

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false в случае возникновения ошибки.

Примеры

Пример #1 Использование 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 итерируемый? ";
dump_iterable($class);
}
?>

Результат выполнения приведённого примера:

Класс ArrayObject итерируемый? bool(true)
Класс IteratorClass итерируемый? bool(true)
Класс DerivedClass итерируемый? bool(true)
Класс NonIterator итерируемый? bool(false)

Смотрите также

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top