PHP设计模式之迭代器模式
在不需要了解内部实现的前提下,遍历一个聚合对象的内部元素而又不暴露该对象的内部表示,这就是PHP迭代器模式的定义。
适用场景:
访问一个聚合对象的内容而无需暴露它的内部表示
支持对聚合对象的多种遍历
为遍历不同的聚合结构提供一个统一的接口
迭代器模式实例:
<?php
class ConcreteIterator implements Iterator{
private $position = 0;
private $arr;
function __construct(array $arr){
$this->arr = $arr;
}
function rewind(){
$this->position = 0;
}
function current(){
return $this->arr[$this->position];
}
function key(){
return $this->position;
}
function next(){
++$this->position;
}
function valid(){
return isset($this->arr[$this->position]);
}
}
$arr = array('xiao hong','xiao ming','xiaohua');
$concreteIterator = new ConcreteIterator($arr);
foreach ($concreteIterator as $key => $value) {
echo $key."=>".$value."n";
}
以上就是本文的全部内容,希望对大家学习PHP设计模式有所帮助。
浅析PHP7新功能及语法变化总结
标量类型声明有两种模式:强制(默认)和严格模式。现在可以使用下列类型参数(无论用强制模式还是严格模式):字符串(string),整数(int),浮点数(float),以
全面了解PHP中的全局变量
PHP中预定义了几个超级全局变量(superglobals),这意味着它们在一个脚本的全部作用域中都可用。你不需要特别说明,就可以在函数及类中使用。PHP超
PHP 数组基本操作方法详解
数组的概念数组(array)是PHP中一个非常重要的概念,我们可以把数组看做一系列类似的数据的集合,实际上数组是一个有序图。PHP还提供了超过70个内
