« Iterator::valid
IteratorAggregate::getIterator »

IteratorAggregate インターフェイス

(PHP 5, PHP 7, PHP 8)

はじめに

外部イテレータを作成するためのインターフェイスです。

インターフェイス概要

interface IteratorAggregate extends Traversable {
/* メソッド */
public function getIterator(): Traversable
}

例

例1 基本的な使用法

<?php

class myData implements IteratorAggregate
{
    public function getIterator(): Traversable
    {
        return new ArrayIterator([
            "key one" => "item one",
            "key two" => "item two",
            "key three" => "item three"
        ]);
    }
}

$obj = new myData();

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

上の例の出力は、 たとえば以下のようになります。

string(7) "key one"
string(8) "item one"

string(7) "key two"
string(8) "item two"

string(9) "key three"
string(10) "item three"

目次

関連キーワード:
IteratorAggregate   インターフェイス   item   getIterator   three   Traversable   外部   イテレータ   myData   Iterator   valid   概要   interface   extends   基本的   implements   return   ArrayIterator   foreach   dump   目次   traversable
関連する関数・ページ:
iteratoraggregate.getiterator   class.traversable   domnodelist.getiterator   reserved.interfaces   domnamednodemap.getiterator   spl.interfaces