当前位置:Gxlcms > PHP教程 > php迭代器

php迭代器

时间:2021-07-01 10:21:17 帮助过:10人阅读

implements Iterator , 实现Iterator 的 current(); next(); key(); valid(); rewind();

 1 php
 2/* 3 *先定义一个数组
 4 *定义第一个位置 $position = 0
 5 *然后返回key 和value,
 6 *指向下一个位置 ++$position
 7*/ 8class myIterator implements Iterator{
 9//先定义一个位置10private$position  = 0;
11private$array;
1213publicfunction __construct(array$array){
14$this->array = $array;
15        }
16/**
17         * 倒带第一个元素的迭代器
18         * @return void 任何返回值将被忽略.
19*/20publicfunctionrewind(){
21var_dump(__METHOD__);
22$this->position = 0;
23        }
24/**
25         * 检查当前位置是有效的
26         * @return boolean 返回值将bool型布尔,然后评估
27*/28publicfunction valid(){
29var_dump(__METHOD__);
30//判断数组第一个元素是否存在31returnisset($this->array[$this->position]);
32        }
33/**
34         * 返回当前元素
35         * @return mixed 可以返回任何类型。
36*/37publicfunctioncurrent(){
38var_dump(__METHOD__);
39//返回数组的第一个元素40return$this->array[$this->position];
41        }
42/**
43         * 返回当前元素的关键
44         * @return mixed 标量成功,或null失败
45*/46publicfunctionkey(){
47var_dump(__METHOD__);
48//返回数组第一个元素的key49return$this->position;
50        }
51/**
52         * 前进到下一个元素
53         * @return void 任何返回值将被忽略。
54*/55publicfunctionnext(){
56var_dump(__METHOD__);
57             ++ $this->position;
58        }
59    }
6061$array=[
62         "firstelement",
63         "secondeleent",
64         "lastelement"
65    ];
6667$it = new myIterator($array);
68foreach ($itas$key=>$value) {
69echo$key.' => '.$value;
70echo "
"; 71 }

执行结果:

php<strong>迭代器</strong>

以上就介绍了php迭代器,包括了Iterator,迭代器方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行