亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP設(shè)計(jì)模式之迭代器模式

 更新時(shí)間:2016年06月17日 11:37:01   作者:muyuren  
這篇文章主要為大家詳細(xì)介紹了PHP設(shè)計(jì)模式之迭代器模式,感興趣的小伙伴們可以參考一下

在不需要了解內(nèi)部實(shí)現(xiàn)的前提下,遍歷一個(gè)聚合對(duì)象的內(nèi)部元素而又不暴露該對(duì)象的內(nèi)部表示,這就是PHP迭代器模式的定義。

適用場(chǎng)景:
訪問(wèn)一個(gè)聚合對(duì)象的內(nèi)容而無(wú)需暴露它的內(nèi)部表示
支持對(duì)聚合對(duì)象的多種遍歷
為遍歷不同的聚合結(jié)構(gòu)提供一個(gè)統(tǒng)一的接口

迭代器模式實(shí)例:

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)PHP設(shè)計(jì)模式有所幫助。

相關(guān)文章

  • PHP上傳圖片、刪除圖片簡(jiǎn)單實(shí)例

    PHP上傳圖片、刪除圖片簡(jiǎn)單實(shí)例

    這篇文章主要介紹了PHP上傳圖片、刪除圖片簡(jiǎn)單實(shí)例的相關(guān)資料,并附實(shí)現(xiàn)代碼實(shí)例,需要的朋友可以參考下
    2016-11-11
  • Zend Framework教程之路由功能Zend_Controller_Router詳解

    Zend Framework教程之路由功能Zend_Controller_Router詳解

    這篇文章主要介紹了Zend Framework教程之路由功能Zend_Controller_Router,詳細(xì)分析了路由功能Zend_Controller_Router的原理,使用技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-03-03
  • PHP使用SOAP調(diào)用.net的WebService數(shù)據(jù)

    PHP使用SOAP調(diào)用.net的WebService數(shù)據(jù)

    需要和一個(gè).net系統(tǒng)進(jìn)行數(shù)據(jù)交換,對(duì)方提供了一個(gè)WebService接口,使用PHP如何調(diào)用這個(gè)數(shù)據(jù)呢,下面就看看使用SOAP調(diào)用的方法吧
    2013-11-11
  • 服務(wù)器端解壓縮zip的腳本

    服務(wù)器端解壓縮zip的腳本

    服務(wù)器端解壓縮zip的腳本...
    2006-12-12
  • Yii安裝EClientScript插件擴(kuò)展實(shí)現(xiàn)css,js文件代碼壓縮合并加載功能

    Yii安裝EClientScript插件擴(kuò)展實(shí)現(xiàn)css,js文件代碼壓縮合并加載功能

    這篇文章主要介紹了Yii安裝EClientScript插件擴(kuò)展實(shí)現(xiàn)css,js文件代碼壓縮合并加載功能,分析了EClientScript插件的下載、安裝、設(shè)置及使用的相關(guān)技巧,需要的朋友可以參考下
    2016-07-07
  • PHP獲取當(dāng)前時(shí)間的5種實(shí)現(xiàn)方式

    PHP獲取當(dāng)前時(shí)間的5種實(shí)現(xiàn)方式

    這篇文章主要介紹了PHP獲取當(dāng)前時(shí)間的5種實(shí)現(xiàn)方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • php URL跳轉(zhuǎn)代碼 減少外鏈

    php URL跳轉(zhuǎn)代碼 減少外鏈

    有時(shí)候我們需要添加外鏈但對(duì)于網(wǎng)站來(lái)說(shuō)過(guò)多外鏈?zhǔn)遣缓玫?,那么我們可以通過(guò)跳轉(zhuǎn)來(lái)實(shí)現(xiàn)。
    2011-06-06
  • php使用Swoole實(shí)現(xiàn)毫秒級(jí)定時(shí)任務(wù)的方法

    php使用Swoole實(shí)現(xiàn)毫秒級(jí)定時(shí)任務(wù)的方法

    這篇文章主要介紹了php使用Swoole實(shí)現(xiàn)毫秒級(jí)定時(shí)任務(wù)的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Laravel5中contracts詳解

    Laravel5中contracts詳解

    在Laravel5中出現(xiàn)了一個(gè)新的東西,叫做contracts,那么它到底是什么?有什么用?怎么用?我們就來(lái)探討下吧。
    2015-03-03
  • ThinkPHP5中如何使用redis

    ThinkPHP5中如何使用redis

    這篇文章主要介紹了ThinkPHP5中如何使用redis問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04

最新評(píng)論