ホームページ >バックエンド開発 >PHPチュートリアル >PHP - IteratorAggregateインターフェースの詳細説明

PHP - IteratorAggregateインターフェースの詳細説明

WBOY
WBOYオリジナル
2016-07-29 08:56:061590ブラウズ

PHP IteratorAggregate は集約イテレーターとも呼ばれます。外部イテレーターを作成するためのインターフェースを提供します。インターフェースの概要は次のとおりです。

IteratorAggregate extends Traversable {
	abstract public Traversable getIterator ( void )
}

getIterator メソッドを実装する場合は、Iterator インターフェースを実装するクラスのインスタンスを返す必要があります。

例の説明:

<?php
/**
 * 利用聚合式迭代器,并返回一个实现了Iterator接口的类的实例
 *
 * @author 疯狂老司机
 */
class myData implements IteratorAggregate {
    public $one = "Public property one";
    public $two = "Public property two";
    public $three = "Public property three";

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

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

$obj = new myData;

foreach($obj as $key => $value) {
    var_dump($key, $value);
    echo '<br>';// Linux:echo "\n";
}
?>
ArrayIterator イテレータは、オブジェクトまたは配列を foreach を通じて操作できるクラスにカプセル化します。具体的な SPL イテレータについては、後で詳しく説明します。

上記では、PHP - IteratorAggregate インターフェイスの詳細な説明を、関連する側面も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。