日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

深入分析PHP設(shè)計(jì)模式

瀏覽:384日期:2022-09-09 18:14:05

1、單例模式

一個(gè)類,只能允許有一個(gè)對(duì)象存在

<?phpclass test{ protected function __construct(){ } public static function getInstance(){ $_test = new test(); return $_test; }}$test = test::getInstance();var_dump($test);?>

2、工廠模式

工廠模式,顧名思義,如同工廠一樣,你把原材料放入工廠中,出來的是成品,而你并不需要知道工廠里做了什么,工廠模式主要用于解耦。

把對(duì)象的創(chuàng)建和使用的過程分開,比如: ClassA 調(diào)用 ClassB,那么 ClassA 只調(diào)用ClassB 的方法,至于實(shí)例化 ClassB 則在工廠內(nèi)實(shí)現(xiàn)。這樣既減少了代碼的重復(fù)使用,也方便對(duì) ClassB 的后期維護(hù)。如果 ClassB 實(shí)例化過程很復(fù)雜,使用簡(jiǎn)單工廠模式就會(huì)發(fā)現(xiàn)外部無需關(guān)注復(fù)雜的實(shí)例化,只管調(diào)用 ClassB 的方法即可,減少錯(cuò)誤

interface mysql{ public function connect();} class mysqli2 implements mysql{ public function connect(){ echo ’mysqli’; }} class pdo2 implements mysql{ public function connect(){ echo ’pdo’; }}class mysqlFactory{ static public function factory($class_name){ return new $class_name(); }}$obj = mysqlFactory::factory(’pdo2’);$obj->connect();

3、注冊(cè)模式

注冊(cè)模式,解決全局共享和交換對(duì)象。已經(jīng)創(chuàng)建好的對(duì)象,掛在到某個(gè)全局可以使用的數(shù)組上,

在需要使用的時(shí)候,直接從該數(shù)組上獲取即可。將對(duì)象注冊(cè)到全局的樹上。任何地方直接去訪問。

<?phpclass Register{ protected static $objects; function set($alias,$object)//將對(duì)象注冊(cè)到全局的樹上 { self::$objects[$alias]=$object;//將對(duì)象放到樹上 } static function get($name){ return self::$objects[$name];//獲取某個(gè)注冊(cè)到樹上的對(duì)象 } function _unset($alias){ unset(self::$objects[$alias]);//移除某個(gè)注冊(cè)到樹上的對(duì)象。 }}AutoRegister::set(’single’,$single);$single = AutoRegister::get(’single’);var_dump($single);

4、適配器模式

將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另外一個(gè)接口。

//目標(biāo)角色interface Aims{ public function newMethod1(); public function newMethod2();} //需要被適配的類(Adaptee)Class Man{ public function oldMethod1() { echo ’man’; } public function oldMethod2() { echo ’男人’; }} //需要被適配的類(Adaptee)Class Woman{ public function oldMethod1() { echo ’woman’; } public function oldMethod2() { echo ’女人’; }} //適配器,Class Adapters implements Aims{ private $adaptee; public function __construct($adaptee) { $this->adaptee = $adaptee; } public function newMethod1() { //以少量的代碼對(duì)被適配者作出適配 echo ’sex :’; $this->adaptee->oldMethod1(); } public function newMethod2() { echo ’sex name :’; $this->adaptee->oldMethod2(); }} $adapter1 = new Adapters(new Man);$adapter1->newMethod1();$adapter2 = new Adapters(new Woman);$adapter2->newMethod2();

5、策略模式

這是一個(gè)男人和女人的問題,將一組特定的行為和算法封裝成類,以適應(yīng)某些特定的上下文環(huán)境。

UserStrategy.php<?php/* * 聲明策略文件的接口,約定策略包含的行為。 */interface UserStrategy{ function showAd(); function showCategory();}FemaleUser.php<?phpclass FemaleUser implements UserStrategy{ function showAd(){ echo '2016冬季女裝'; } function showCategory(){ echo '女裝'; }}MaleUser.php<?phpclass MaleUser implements UserStrategy{ function showAd(){ echo 'IPhone6s'; } function showCategory(){ echo '電子產(chǎn)品'; }}Page.php//執(zhí)行文件<?phprequire_once ’Loader.php’;class Page{ protected $strategy; function index(){ echo 'AD'; $this->strategy->showAd(); echo '<br>'; echo 'Category'; $this->strategy->showCategory(); echo '<br>'; } function setStrategy(UserStrategy $strategy){ $this->strategy=$strategy; }}$page = new Page();if(isset($_GET[’male’])){ $strategy = new MaleUser();}else { $strategy = new FemaleUser();}$page->setStrategy($strategy);$page->index();

6、原型模式

不常用,大的對(duì)象類才使用,表現(xiàn)在clone

7、觀察者模式

從面向過程的角度來看,首先是觀察者向主題注冊(cè),注冊(cè)完之后,主題再通知觀察者做出相應(yīng)的操作,整個(gè)事情就完了

/** * 事件產(chǎn)生類 * Class EventGenerator */abstract class EventGenerator{ private $ObServers = []; //增加觀察者 public function add(ObServer $ObServer) { $this->ObServers[] = $ObServer; } //事件通知 public function notify() { foreach ($this->ObServers as $ObServer) { $ObServer->update(); } }}/** * 觀察者接口類 * Interface ObServer */interface ObServer{ public function update($event_info = null);}/** * 觀察者1 */class ObServer1 implements ObServer{ public function update($event_info = null) { echo '觀察者1 收到執(zhí)行通知 執(zhí)行完畢!n'; }}/** * 觀察者1 */class ObServer2 implements ObServer{ public function update($event_info = null) { echo '觀察者2 收到執(zhí)行通知 執(zhí)行完畢!n'; }}/** * 事件 * Class Event */class Event extends EventGenerator{ /** * 觸發(fā)事件 */ public function trigger() { //通知觀察者 $this->notify(); }}//創(chuàng)建一個(gè)事件$event = new Event();//為事件增加旁觀者$event->add(new ObServer1());$event->add(new ObServer2());//執(zhí)行事件 通知旁觀者$event->trigger();

以上就是深入分析PHP設(shè)計(jì)模式的詳細(xì)內(nèi)容,更多關(guān)于PHP設(shè)計(jì)模式的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: PHP
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久国产精品久久w女人spa| 美女福利一区二区三区| 国产精品精品| 国产麻豆一区二区三区精品视频| 在线精品福利| 一本一道久久a久久| 国产亚洲综合精品| 久久国产精品亚洲77777| 午夜久久免费观看| 欧美日韩精品免费观看视频完整| 免费国产自久久久久三四区久久 | 99精品视频在线观看免费播放| 中文字幕在线免费观看视频| 不卡福利视频| 亚洲www啪成人一区二区| 特黄毛片在线观看| 久久精品影视| 欧美特黄视频| 美国三级日本三级久久99| 婷婷综合国产| 国产精品一区二区三区四区在线观看| 国产精品多人| 日韩av自拍| 99精品综合| 免费在线观看视频一区| 91麻豆精品激情在线观看最新| 欧美精品aa| 色婷婷综合网| 欧美日韩国产综合网| 亚洲欧美在线综合| 国产亚洲一区二区三区啪| 老色鬼精品视频在线观看播放| 中文av在线全新| 欧美日韩视频| 日韩中文字幕无砖| 国产剧情一区二区在线观看| 成人台湾亚洲精品一区二区| 日韩精品一卡| 一区二区三区四区精品视频| 国产精品资源| 久久一区二区三区喷水| 亚洲香蕉视频| 精品免费av| 激情六月综合| 日韩高清在线一区| 中文在线资源| 黄色亚洲大片免费在线观看| 日韩av中文在线观看| 91亚洲自偷观看高清| 亚洲自拍另类| 国产精品久久久久久久免费软件| 蜜桃视频在线网站| 蜜臀va亚洲va欧美va天堂| 国产极品一区| 99国产精品私拍| 国产日韩视频| 香蕉人人精品| 国产欧美成人| 欧美精品一线| 精品久久91| 国产亚洲欧洲| 成人在线免费观看91| 免费一级片91| 亚洲精品永久免费视频| 亚洲三级网站| 色网在线免费观看| 日韩亚洲精品在线观看| 99久久99久久精品国产片果冰| 日韩精品一区二区三区中文| 色在线中文字幕| 日韩二区三区四区| 狠狠操综合网| 九九九精品视频| 视频一区国产视频| 日韩综合一区| 亚州av日韩av| 91精品一区国产高清在线gif| 奇米狠狠一区二区三区| 亚洲一本视频| 国产亚洲一区二区三区啪| 欧美丝袜一区| 精品网站999| 亚州av日韩av| 2023国产精品久久久精品双| 久久中文字幕导航| 在线国产精品一区| 午夜精品久久久久久久久久蜜桃| 日本aⅴ亚洲精品中文乱码| 午夜久久免费观看| 日韩在线视频精品| 国产欧美日韩一区二区三区四区 | 日韩中文欧美| 欧美激情麻豆| 日韩欧美中文在线观看| 蜜臀av免费一区二区三区| 精品视频高潮| 国产精品国码视频| 日韩精品社区| 久久xxxx| 欧美日韩精品免费观看视频完整| 91亚洲人成网污www| 欧美精品第一区| 国产日韩高清一区二区三区在线| 日韩中文字幕区一区有砖一区 | 婷婷精品久久久久久久久久不卡| 久久久影院免费| 福利一区二区免费视频| 日本天堂一区| 亚洲精品少妇| 快she精品国产999| 欧美在线亚洲| 在线一区免费| 狠狠爱成人网| 欧美91视频| 亚洲特级毛片| 亚洲网站视频| 日韩欧美字幕| 国产精品精品| 欧美一级鲁丝片| 色网在线免费观看| 中文字幕色婷婷在线视频| 中文字幕高清在线播放| 亚洲国产福利| 欧美肉体xxxx裸体137大胆| 欧美91精品| 乱人伦精品视频在线观看| 香蕉久久久久久久av网站| 九九久久婷婷| 国产精品美女久久久浪潮软件| 国产精品美女久久久| 日韩午夜电影| 香蕉久久国产| 丝袜美腿成人在线| 三级欧美在线一区| 日本亚洲视频| 日本午夜精品久久久久| 久久黄色影视| 久久精品欧洲| 黄色aa久久| 伊人精品一区| 丝袜a∨在线一区二区三区不卡| 一区二区三区网站| 欧美性www| 韩国女主播一区二区三区| 日韩大片在线观看| 欧美/亚洲一区| 亚洲专区一区| 日韩av一二三| 国产96在线亚洲| 亚洲婷婷在线| 亚洲欧洲国产精品一区| 国产精品免费精品自在线观看| 国产一区丝袜| 亚洲高清av| 一本一道久久a久久| 国产精品美女在线观看直播| 毛片在线网站| 国产亚洲一区在线| 久久精品97| 黑人精品一区| 久色成人在线| 日韩高清中文字幕一区| 精品网站aaa| 午夜精品亚洲| 欧美日本不卡| av在线日韩| 亚洲资源在线| 精品视频91| 欧美另类综合| 国产情侣久久| 久久久久99| 蜜桃一区二区三区在线| 欧美韩一区二区| 不卡视频在线| 欧美伊人久久| 91精品啪在线观看国产18 | 欧美日韩国产免费观看 | 四虎影视精品| 亚洲精品在线国产| 国产一区二区三区免费在线| 亚洲五月婷婷| 国产精品一区毛片| 在线观看免费一区二区| 国产日韩三级| 在线精品小视频| 老鸭窝一区二区久久精品| 亚洲手机在线| 国产九一精品| 91久久国产| 欧美成人aaa| 免费成人av在线播放| 久久精品国产久精国产| 亚洲欧美日韩精品一区二区| 精品视频网站| 亚洲欧洲专区| 久久中文字幕二区| 国产精品99久久免费观看| 在线视频亚洲| 麻豆视频在线观看免费网站黄| 视频一区中文字幕精品|