PHP设计模式系列 - 迭代器_PHP教程

WBOY
Lepaskan: 2016-07-13 17:52:11
asal
1042 orang telah melayarinya

PHP迭代器:
可帮助构造特定的对象,那些对象能够提供单一标准接口循环或迭代任何类型的可计数数据。(不是特别常用,在PHP中)
使用场景:
1.访问一个聚合对象的内容而无需暴露它的内部表示。
2.支持对聚合对象的多种遍历。
3.为遍历不同的聚合结构提供一个统一的接口(即,多态迭代)。

PHP代码实现:
[php] 
//迭代器:可帮助构造特定的对象,那些对象能够提供单一标准接口循环或迭代任何类型的可计数数据 
class MyIterator implements Iterator {    
     
    private $var = array(); 
     
    public function __construct($array) {     
        $this->var = $array; 
    } 
     
    public function rewind() {      
        reset($this->var); 
    } 
     
    public function current() {    
        $var = current($this->var); 
         return $var; 
    } 
      
    public function valid() {     
        $var = $this->current() !== false; 
        return $var; 
    } 
     
    public function next() {     
        $var = next($this->var); 
         return $var; 
    } 
     
    public function key() {     
        $var = key($this->var); 
         return $var; 
    } 

$values = array('a', 'b', 'c'); 
$it = new MyIterator($values); 
foreach ($it as $a => $b) {  
    print "$a: $b
";   

?> 


作者:initphp

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478134.htmlTechArticlePHP迭代器: 可帮助构造特定的对象,那些对象能够提供单一标准接口循环或迭代任何类型的可计数数据。(不是特别常用,在PHP中) 使用...
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!