<?php
class Test implements Iterator {
private $item = array(1,2,3,4,5);
public function __construct() {
}
// 重置,将数组内部指针指向第一个单元
public function rewind() {
reset($this->item);
}
// 判断单前索引游标指向的元素是否有效
public function valid() {
return ($this->current() !== false);
}
// 返回数组当前单元
public function current() {
return current($this->item);
}
// 返回单前单元的键名
public function key() {
return key($this->item);
}
// 移动单前索引游标到下一元素
public function next() {
return next($this->item);
}
}
// 测试:
$t = new Test();
foreach($t as $k=>$v) {
echo $k,'---->',$v,'<br />';
}