# IteratorAggregate（聚合式迭代器）接口

(PHP 5, PHP 7, PHP 8)

## 简介

创建外部迭代器的接口。

## 接口摘要

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

## 示例

示例 #1 基本用法

    <?php

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

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

        public function getIterator(): Traversable
        {
            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 — 获取一个外部迭代器或可遍历对象

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open