最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP工廠模式、單例模式與注冊(cè)樹模式實(shí)例詳解

 更新時(shí)間:2019年06月03日 08:47:39   作者:學(xué)習(xí)筆記666  
這篇文章主要介紹了PHP工廠模式、單例模式與注冊(cè)樹模式,結(jié)合實(shí)例形式工廠模式、單例模式與注冊(cè)樹模式的基本概念、原理、實(shí)現(xiàn)方法及使用技巧,需要的朋友可以參考下

本文實(shí)例講述了PHP工廠模式、單例模式與注冊(cè)樹模式。分享給大家供大家參考,具體如下:

三種基本設(shè)計(jì)模式

1、工廠模式:工廠方法或者類生成對(duì)象,而不是在代碼中直接new
2、單例模式:使某個(gè)類的對(duì)象僅允許創(chuàng)建一個(gè)
3、注冊(cè)模式:全局共享和交換對(duì)象

工廠模式:

<?php
namespace IMooc;
class Factory
{
  static function createDatabase()
  {
    $db = new Database();
    return $db;
  }
}

$db = IMooc\Factory::createDatabase();

工廠模式的好處是,避免Database這個(gè)類,在很多個(gè)php文件都進(jìn)行new操作,如果Database這個(gè)類發(fā)生了一些變更(修改了名字或者參數(shù)),那這時(shí)候如果不工廠模就需要修改多出了,使用工廠模式,就只需要修改工廠方法即可。

單例模式:

<?php
namespace IMooc;
class Database
{
  protected $db;
  private function __construct()
  {
  }
  // 獲取數(shù)據(jù)庫(kù)操作實(shí)例
  static function getInstance()
  {
    if(self::$db){
      return self::$db;
    }else{
      self::$db = new self();
      return self::$db;
    }
  }
}
// 無(wú)論調(diào)用多少次,只會(huì)創(chuàng)建一個(gè)實(shí)例
$db = IMooc\Database::getInstance();
$db = IMooc\Database::getInstance();
$db = IMooc\Database::getInstance();
$db = IMooc\Database::getInstance();

注冊(cè)樹模式:

<?php
namespace IMooc;
class Register
{
  protected static $objects;
  static function set($alias, $object)
  {
    self::$objects[$alias] = $object;
  }
  static function get($name)
  {
    return self::$objects[$name];
  }
  static function _unset($alias)
  {
    unset(self::$objects[$alias]);
  }
}
$db = \IMooc\Register::get('db1');

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • php 生成唯一id的幾種解決方法

    php 生成唯一id的幾種解決方法

    本篇文章介紹了“php 生成唯一id的幾種解決方法”,需要的朋友可以參考一下
    2013-03-03
  • PHP實(shí)時(shí)統(tǒng)計(jì)中文字?jǐn)?shù)和區(qū)別

    PHP實(shí)時(shí)統(tǒng)計(jì)中文字?jǐn)?shù)和區(qū)別

    今天小編就為大家分享一篇關(guān)于PHP統(tǒng)計(jì)實(shí)時(shí)統(tǒng)計(jì)漢字個(gè)數(shù)和區(qū)別,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02
  • ThinkPHP采用模塊和操作分析

    ThinkPHP采用模塊和操作分析

    ThinkPHP采用模塊和操作的方式來(lái)執(zhí)行,首先,用戶的請(qǐng)求會(huì)通過(guò)入口文件生成一個(gè)應(yīng)用實(shí)例,應(yīng)用控制器(我們稱之為核心控制器)會(huì)管理整個(gè)用戶執(zhí)行的過(guò)程,并負(fù)責(zé)模塊的調(diào)度和操作的執(zhí)行,并且在最后銷毀該應(yīng)用實(shí)例。
    2011-04-04
  • php文件上傳的兩種實(shí)現(xiàn)方法

    php文件上傳的兩種實(shí)現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了兩種php文件上傳的實(shí)現(xiàn)方法,感興趣的朋友可以參考一下
    2016-04-04
  • PHP實(shí)現(xiàn)的數(shù)組和XML文件相互轉(zhuǎn)換功能示例

    PHP實(shí)現(xiàn)的數(shù)組和XML文件相互轉(zhuǎn)換功能示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的數(shù)組和XML文件相互轉(zhuǎn)換功能,結(jié)合實(shí)例形式分析了php針對(duì)xml格式數(shù)據(jù)與數(shù)組相互轉(zhuǎn)換操作技巧,需要的朋友可以參考下
    2018-03-03
  • PHP觀察者模式原理與簡(jiǎn)單實(shí)現(xiàn)方法示例

    PHP觀察者模式原理與簡(jiǎn)單實(shí)現(xiàn)方法示例

    這篇文章主要介紹了PHP觀察者模式原理與簡(jiǎn)單實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了php觀察者模式的概念、原理、實(shí)現(xiàn)方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-08-08
  • php 正則表達(dá)式小結(jié)

    php 正則表達(dá)式小結(jié)

    正則表達(dá)式(regular expression)描述了一種字符串匹配的模式,可以用來(lái)檢查一個(gè)串是否含有某種子串、將匹配的子串做替換或者從某個(gè)串中取出符合某個(gè)條件的子串等。
    2009-08-08
  • PHP 引用的概念

    PHP 引用的概念

    這篇文章主要介紹了PHP的中引用的概念,幫助大家更好的理解和學(xué)習(xí)使用PHP,感興趣的朋友可以了解下
    2021-04-04
  • Windows下PHP開發(fā)環(huán)境搭建教程(Apache+PHP+MySQL)

    Windows下PHP開發(fā)環(huán)境搭建教程(Apache+PHP+MySQL)

    這篇文章主要為大家詳細(xì)介紹了Windows下PHP開發(fā)環(huán)境搭建教程:Apache+PHP+MySQL,具有一定的實(shí)用性和參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • PHP的Socket通信之UDP通信實(shí)例

    PHP的Socket通信之UDP通信實(shí)例

    這篇文章主要介紹了PHP的Socket通信之UDP通信方法,實(shí)例分析了php基于socket實(shí)現(xiàn)UDP通信的相關(guān)技巧,需要的朋友可以參考下
    2015-07-07

最新評(píng)論

疏勒县| 怀来县| 双鸭山市| 中阳县| 额尔古纳市| 安龙县| 蒲城县| 普宁市| 兴义市| 定结县| 恩施市| 陇南市| 雅江县| 晋宁县| 北川| 古交市| 军事| 临泽县| 葫芦岛市| 青冈县| 永丰县| 上林县| 博罗县| 安庆市| 阳朔县| 铜山县| 廊坊市| 乌拉特中旗| 永春县| 永嘉县| 河津市| 新平| 株洲市| 南宫市| 通山县| 科技| 潜江市| 新和县| 鄢陵县| 桓仁| 乐清市|