码迷,mamicode.com
首页 > Web开发 > 详细

PHP设计模式系列 - 迭代器

时间:2015-04-10 17:16:27      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:

  • 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<br>";    
    }  
    ?>  

 

自:http://blog.csdn.net/initphp/article/details/7693576

 

PHP设计模式系列 - 迭代器

标签:

原文地址:http://www.cnblogs.com/zhhtao/p/4414692.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!