codecamp

PHP8 IteratorAggregate(聚合式迭代器)接口

(PHP 5, PHP 7, PHP 8)

简介

创建外部迭代器的接口。

接口摘要

interface IteratorAggregate extends Traversable {
/* 方法 */
public getIterator(): Traversable
}

示例 #1 基本用法

<?php
class myData implements IteratorAggregate {
public $property1 = "Public property one";
public $property2 = "Public property two";
public $property3 = "Public property three";

public function __construct() {
$this->property4 = "last property";
}

public function getIterator() {
return new ArrayIterator($this);
}
}

$obj = new myData;

foreach($obj as $key => $value) {
var_dump($key, $value);
echo "\n";
}
?>

以上示例的输出类似于:

string(9) "property1"
string(19) "Public property one"

string(9) "property2"
string(19) "Public property two"

string(9) "property3"
string(21) "Public property three"

string(9) "property4"
string(13) "last property"

目录

  • IteratorAggregate::getIterator — 获取一个外部迭代器


PHP8 Iterator(迭代器)接口
PHP8 The InternalIterator class
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定