Heim > Backend-Entwicklung > PHP-Tutorial > PHP设计模式系列 - 迭代器_PHP教程

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

WBOY
Freigeben: 2016-07-13 17:52:11
Original
1068 Leute haben es durchsucht

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中) 使用...
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage