首頁 >後端開發 >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