這篇文章主要介紹了PHP聚合式迭代器介面IteratorAggregate用法,結合實例形式分析了聚合式迭代器介面IteratorAggregate的概念、功能、定義及使用方法,需要的朋友可以參考下
本文實例講述了PHP聚合式迭代器介面IteratorAggregate用法。分享給大家供大家參考,具體如下:
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"; } ?>以上範例輸出:
string 'one' (length=3) string 'Public property one' (length=19) string 'two' (length=3) string 'Public property two' (length=19) string 'three' (length=5) string 'Public property three' (length=21) string 'last' (length=4) string 'last property' (length=13)ArrayIterator迭代器會把物件或陣列封裝為一個可以透過foreach來操作的類,具體可參考SPL 迭代器相關介紹,有興趣的朋友可關注php中文網。 您可能感興趣的文章:
#
以上是PHP聚合式迭代器介面IteratorAggregate的用法分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!