PHP 8.3.4 Released!

The EmptyIterator class

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

Introduction

The EmptyIterator class for an empty iterator.

Class synopsis

class EmptyIterator implements Iterator {
/* Methods */
public current(): never
public key(): never
public next(): void
public rewind(): void
public valid(): false
}

Table of Contents

add a note

User Contributed Notes 1 note

up
12
Ben
6 years ago
Example use case:

<?php
class MyIterator implements IteratorAggregate
{
/**
* @var string
*/
private $url;

/**
* MyIterator constructor.
* @param $url
*/
public function __construct($url)
{
$this->url = $url;
}

/**
* @inheritDoc
*/
public function getIterator()
{
$content = file_get_contents($this->url);
try {
return @new
SimpleXMLIterator($content);

} catch (
Exception $e) { // Case $content is not valid XML, but you don't care
return new EmptyIterator();
}
}

}
?>
To Top