PHP IteratorAggregate 接口
phpserver side programmingprogramming更新于 2025/8/19 4:52:17
简介
IteratorAggregate 接口扩展了抽象的 Traversable 接口。该接口由一个类实现,用于创建外部迭代器。该接口引入了一个名为 getIterator 的抽象方法。
语法
IteratorAggregate extends Traversable {
/* Methods */
abstract public getIterator ( void ) : Traversable
}
Methods
IteratorAggregate::getIterator — Retrieve an external iterator
此函数无参数,返回一个实现了 Iterator 或 Traversable 接口的对象实例。
IteratorAggregate 示例
在以下 PHP 脚本中,一个实现了 IteratorAggregate 接口的类包含一个数组属性。getIterator() 方法从该数组中返回 ArrayIterator 对象。我们可以使用 foreach 循环遍历该数组。
示例
<?php
class myIterator implements IteratorAggregate {
public $arr;
public function __construct() {
$this->arr = array(10,20,30,40);
}
public function getIterator() {
return new ArrayIterator($this->arr);
}
}
$obj = new myIterator();
foreach($obj as $key => $value) {
echo $key ." =>" . $value . "
";
}
?>
输出
遍历数组属性显示以下结果
0=>10 1=>20 2=>30 3=>40

