濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > PHP工廠模式、單例模式與注冊(cè)樹模式實(shí)例詳解

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

熱門標(biāo)簽:外呼系統(tǒng)能給企業(yè)帶來(lái)哪些好處 開發(fā)地圖標(biāo)注類網(wǎng)站 咸寧銷售電銷機(jī)器人系統(tǒng) 百度地圖怎樣標(biāo)注圖標(biāo) 400電話蘭州申請(qǐng)請(qǐng) 廣東廣州在怎么申請(qǐng)400電話 余姚電話機(jī)器人 百度地圖標(biāo)注偏差 電銷機(jī)器人問門薩維品牌my

本文實(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ì)有所幫助。

您可能感興趣的文章:
  • PHP 工廠模式使用方法
  • php設(shè)計(jì)模式 Factory(工廠模式)
  • PHP中“簡(jiǎn)單工廠模式”實(shí)例代碼講解
  • php基礎(chǔ)設(shè)計(jì)模式大全(注冊(cè)樹模式、工廠模式、單列模式)
  • PHP實(shí)現(xiàn)單例模式最安全的做法
  • php單例模式實(shí)現(xiàn)(對(duì)象只被創(chuàng)建一次)
  • php利用單例模式實(shí)現(xiàn)日志處理類庫(kù)
  • PHP設(shè)計(jì)模式之注冊(cè)樹模式分析
  • PHP單例模式實(shí)例分析【防繼承,防克隆操作】
  • PHP單例模式數(shù)據(jù)庫(kù)連接類與頁(yè)面靜態(tài)化實(shí)現(xiàn)方法

標(biāo)簽:巴彥淖爾 麗江 十堰 臨沂 鷹潭 銅陵 衡陽(yáng) 重慶

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP工廠模式、單例模式與注冊(cè)樹模式實(shí)例詳解》,本文關(guān)鍵詞  PHP,工廠,模式,單例,與,注冊(cè),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP工廠模式、單例模式與注冊(cè)樹模式實(shí)例詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP工廠模式、單例模式與注冊(cè)樹模式實(shí)例詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    广河县| 贵溪市| 务川| 长宁区| 东海县| 葫芦岛市| 准格尔旗| 三原县| 大悟县| 牡丹江市| 朝阳县| 桂阳县| 太仆寺旗| 永济市| 张家界市| 徐州市| 松阳县| 景洪市| 额尔古纳市| 伊宁县| 习水县| 牙克石市| 芮城县| 盐城市| 高平市| 宁安市| 江西省| 响水县| 绥化市| 东台市| 温宿县| 桂平市| 泊头市| 阿克苏市| 枣阳市| 永吉县| 徐闻县| 永清县| 新野县| 西城区| 万安县|