本文實(shí)例講述了PHP聚合式迭代器接口IteratorAggregate用法。分享給大家供大家參考,具體如下:
PHP IteratorAggregate又叫聚合式迭代器,它提供了創(chuàng)建外部迭代器的接口,接口摘要如下:
IteratorAggregate extends Traversable { abstract public Traversable getIterator ( void )}實(shí)現(xiàn)getIterator方法時(shí)必須返回一個(gè)實(shí)現(xiàn)了Iterator接口的類的實(shí)例。
例子說(shuō)明:
<?php/** * 利用聚合式迭代器,并返回一個(gè)實(shí)現(xiàn)了Iterator接口的類的實(shí)例 * * @author 瘋狂老司機(jī) */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迭代器會(huì)把對(duì)象或數(shù)組封裝為一個(gè)可以通過(guò)foreach來(lái)操作的類
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選