L'interface SeekableIterator
(PHP 5 >= 5.1.0)
Introduction
L'itérateur SeekableIterator.
Sommaire de l'Interface
Exemple #1 Utilisation simple
<?php
class MySeekableIterator implements SeekableIterator {
	private $position;
	private $array = array(
		"premier élément",
		"second élément",
		"troisième élément",
		"quatriéme élément"
	);
	/* Méthode requis pour l'interface SeekableIterator */
	public function seek($position) {
	  if (!isset($this->array[$position]) {
		  throw new OutOfBoundsException("position invalide ($position)");
	  }
	  $this->position = $position;
	}
	/* Méthodes requises par l'interface Iterator */
	
	public function rewind() {
		$this->position = 0;
	}
	public function current() {
		return $this->array[$this->position];
	}
	public function key() {
		return $this->position;
	}
	public function next() {
		++$this->position;
	}
	public function valid() {
		return isset($this->array[$this->position]);
	}
}
try {
	$it = new MySeekableIterator;
	echo $it->current(), "\n";
	
	$it->seek(2);
	echo $it->current(), "\n";
	
	$it->seek(1);
	echo $it->current(), "\n";
	
	$it->seek(10);
	
} catch (OutOfBoundsException $e) {
	echo $e->getMessage();
}
?>L'exemple ci-dessus va afficher quelque chose de similaire à :
premier élément troisième élément second élément position invalide (10)
Sommaire
- SeekableIterator::seek — Recherche une position
