我想将关联数组与 PHP 迭代器一起使用:
http://php.net/manual/en/class.iterator.php
是否可以?
我定义了这些方法:
public function rewind(){
reset($this->_arr);
$this->_position = key($this->_arr);
}
public function current(){
return $this->_arr[$this->_position];
}
public function key(){
return $this->_position;
}
public function next(){
++$this->_position;
}
public function valid(){
return isset($this->_arr[$this->_position]);
}
问题是它没有正确迭代。我只得到一个元素。
我认为这是因为++$this->_position
next() 方法中的代码没有任何效果,因为 _position 是一个字符串(关联数组的键)。
那么我怎样才能进入这种数组的下一个元素呢?