IteratorAggregate インターフェイス

(PHP 5, PHP 7, PHP 8)

はじめに

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

インターフェイス概要

interface IteratorAggregate extends 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, string, property, getIterator, Public, Traversable, 外部, 作成, 概要, extends