国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

PHP基礎之預定義接口2——Iterator接口

瀏覽:100日期:2022-09-15 10:29:02

可在內部迭代自己的外部迭代器或類的接口。

接口摘要

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 )}預定義迭代器

PHP 已經提供了一些用于日常任務的迭代器,如SPL迭代器。

范例

Example #1 基本用法

這個例子展示了使用?foreach?時,迭代器方法的調用順序。

<?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 'n'; }?>

以上例程的輸出類似于:

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'方法列表Iterator::current?— 返回當前元素Iterator::key?— 返回當前元素的鍵Iterator::next?— 向前移動到下一個元素Iterator::rewind?— 返回到迭代器的第一個元素Iterator::valid?— 檢查當前位置是否有效

標簽: PHP
相關文章:
主站蜘蛛池模板: 壶关县| 陇川县| 周宁县| 灯塔市| 尤溪县| 霍邱县| 莱芜市| 铁岭市| 庆元县| 远安县| 灵丘县| 长岛县| 梁山县| 天津市| 浦东新区| 晋宁县| 彩票| 鹤庆县| 吉首市| 鄂托克旗| 多伦县| 潞城市| 吉木萨尔县| 永定县| 平顺县| 刚察县| 诏安县| 习水县| 古田县| 毕节市| 金昌市| 长阳| 贵溪市| 青神县| 广州市| 舒城县| 湄潭县| 沅陵县| 南丰县| 孟连| 宜章县|