1. 云栖社区>
  2. PHP教程>
  3. 正文

PHP - Iterator接口的解释

作者:用户 来源:互联网 时间:2017-12-01 18:21:07

php接口iterator解释

PHP - Iterator接口的解释 - 摘要: 本文讲的是PHP - Iterator接口的解释, Iterator的接口定义如下: Iterator extends Traversable { abstract public mixed current ( void ) abstract public scalar key ( v


Iterator的接口定义如下:


Iterator extends Traversable
{
abstract public mixed current ( void )
abstract public scalar key ( void )
abstract public void next ( void )
abstract public void rewind ( void )
abstract public boolean valid ( void )
}
下面是一个简单的例子演示Iterator的使用方法:
<?php
class myIterator implements Iterator {
private $position = 0;
private $array = array(
"firstelement",
"secondelement",
"lastelement",
);
public function __construct() {
$this->position = 0;
}
function rewind() {
var_dump(__METHOD__);
$this->position = 0;
}
function current() {
var_dump(__METHOD__);
return $this->array[$this->position];
}
function key() {
var_dump(__METHOD__);
return $this->position;
}
function next() {
var_dump(__METHOD__);
++$this->position;
}
function valid() {
var_dump(__METHOD__);
return isset($this->array[$this->position]);
}
}
$it = new myIterator;
foreach($it as $key => $value) {
var_dump($key, $value);
echo"
";
}
?>
上面的例子会产生如下的输出:
string(18)"myIterator::rewind"
string(17)"myIterator::valid"
string(19)"myIterator::current"
string(15)"myIterator::key"
int(0)
string(12)"firstelement"
string(16)"myIterator::next"
string(17)"myIterator::valid"
string(19)"myIterator::current"
string(15)"myIterator::key"
int(1)
string(13)"secondelement"
string(16)"myIterator::next"
string(17)"myIterator::valid"
string(19)"myIterator::current"
string(15)"myIterator::key"
int(2)
string(11)"lastelement"
string(16)"myIterator::next"
string(17)"myIterator::valid"原文地址:http://blog.csdn.net/amonest/article/details/6193221

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php , 接口 , iterator 解释 ,以便于您获取更多的相关知识。