Exemple #1
0
 function rewind()
 {
     echo __METHOD__ . "\n";
     parent::rewind();
 }
<?php

$data = array('Mela', 'Pera', 'Kiwi');
$iterator = new NoRewindIterator(new ArrayIterator($data));
echo $iterator->current(), PHP_EOL;
$iterator->next();
echo $iterator->current(), PHP_EOL;
$iterator->next();
echo $iterator->current(), PHP_EOL;
$iterator->rewind();
echo $iterator->current(), PHP_EOL;
<?php

// NoRewindIterator -> can only read the collection once
$arr = array(array("name" => "John Abraham", "sex" => "M", "age" => 27), array("name" => "Lily Bernard", "sex" => "F", "age" => 37), array("name" => "Ayesha Siddika", "sex" => "F", "age" => 26), array("name" => "Afif", "sex" => "M", "age" => 2));
$persons = new ArrayObject($arr);
$LI = new NoRewindIterator($persons->getIterator());
foreach ($LI as $person) {
    echo $person['name'] . "<br/>";
    //$LI->rewind();
}
foreach ($LI as $person) {
    echo $person['name'] . "<br/>";
    $LI->rewind();
}
/* output:

John Abraham
Lily Bernard
Ayesha Siddika
Afif

*/