函式名:Iterator::rewind()
函式說明:Iterator::rewind() 方法將迭代器重置到第一個元素。
適用版本:該函式在PHP 5 及以上版本中可用。
用法示例:
<?php
class MyIterator implements Iterator {
private $position = 0;
private $array = array(
"first element",
"second element",
"third element",
);
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]);
}
}
$it = new MyIterator();
// 使用rewind()方法將迭代器重置到第一個元素
$it->rewind();
while($it->valid()) {
echo $it->key() . ' => ' . $it->current() . "\n";
$it->next();
}
?>
輸出結果:
0 => first element
1 => second element
2 => third element
在上述示例中,我們建立了一個自定義的迭代器類MyIterator,實現了Iterator介面的所有方法。在rewind()方法中,我們將迭代器的位置重置為0,使其指向第一個元素。然後,在while迴圈中,使用valid()方法檢查迭代器是否還有下一個元素,如果有,則輸出當前元素的鍵和值,並透過next()方法將迭代器移動到下一個元素。最終,輸出了所有元素的鍵值對。