中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

PHP中數(shù)據(jù)庫(kù)單例模式的實(shí)現(xiàn)代碼分享

首先我們要知道明確單例模式這個(gè)概念,那么什么是單例模式呢?

單例模式顧名思義,就是只有一個(gè)實(shí)例。

作為對(duì)象的創(chuàng)建模式, 單例模式確保某一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例,這個(gè)類我們稱之為單例類。

單例模式的要點(diǎn)有三個(gè):

一是某個(gè)類只能有一個(gè)實(shí)例;
二是它必須自行創(chuàng)建這個(gè)實(shí)例;
三是它必須自行向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。

下面我們討論下為什么要使用php單例模式?

多數(shù)人都是從單例模式的字面上的意思來(lái)理解它的用途, 認(rèn)為這是對(duì)系統(tǒng)資源的節(jié)省, 可以避免重復(fù)實(shí)例化, 是一種"計(jì)劃生育". 而php每次執(zhí)行完頁(yè)面都是會(huì)從內(nèi)存中清理掉所有的資源. 因而php中的單例實(shí)際每次運(yùn)行都是需要重新實(shí)例化的, 這樣就失去了單例重復(fù)實(shí)例化的意義了. 單單從這個(gè)方面來(lái)說(shuō), php的單例的確有點(diǎn)讓各位失望. 但是單例僅僅只有這個(gè)功能和應(yīng)用嗎? 答案是否定的,我們一起來(lái)看看。

1. php應(yīng)用主要在于數(shù)據(jù)庫(kù)應(yīng)用, 所以一個(gè)應(yīng)用中會(huì)存在大量的數(shù)據(jù)庫(kù)操作, 在使用面向?qū)ο蟮姆绞介_(kāi)發(fā)時(shí)(廢話), 如果使用單例模式, 則可以避免大量的new 操作消耗的資源。

2. 如果系統(tǒng)中需要有一個(gè)類來(lái)全局控制某些配置信息, 那么使用單例模式可以很方便的實(shí)現(xiàn). 這個(gè)可以參看zend Framework的FrontController部分。

3. 在一次頁(yè)面請(qǐng)求中, 便于進(jìn)行調(diào)試, 因?yàn)樗械拇a(例如數(shù)據(jù)庫(kù)操作類db)都集中在一個(gè)類中, 我們可以在類中設(shè)置鉤子, 輸出日志,從而避免到處var_dump, echo。

class db {  public static $cennct = null;  private function __construct(){return false;}  private function conn(){    $pdo = new PDO('mysql:host=localhost;dbname=dbname','root','');    $pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);        $pdo->query('set names utf8');                return $pdo;                    }  public static function getdb(){    if(self::$cennct == null )      self::$cennct = self::conn();       return true;  }  protected function fetch($sql,$param=array()){    $this->getdb();    $tmp = self::$cennct->prepare($sql);    $tmp->execute($param);    return $tmp->fetch(PDO::FETCH_ASSOC);  }  protected function fetchAll($sql,$param=array()){    $this->getdb();    $tmp = self::$cennct->prepare($sql);    $tmp->execute($param);    return $tmp->fetchAll(PDO::FETCH_ASSOC);       }  protected function execute($sql,$param=array()){    $this->getdb();     $tmp = self::$cennct->prepare($sql);    return $tmp->execute($param);  }}

以上為一個(gè)數(shù)據(jù)庫(kù)操作單例模式

php技術(shù)PHP中數(shù)據(jù)庫(kù)單例模式的實(shí)現(xiàn)代碼分享,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 一区二区三区在线看 | 国产h视频 | 色综合天天综合网国产成人网 | 日韩一区二区成人 | 天天碰日日操 | 国产一二三视频在线观看 | 成人一级毛片 | 日韩久久精品电影 | 国产黄色电影 | 成人欧美一区二区 | 成人依人 | 中文字幕a√ | 中文字幕 在线观看 | 国产精品久久久久一区二区三区 | 国产精品久久国产精品 | 日韩一区二区av | 99精品国产一区二区青青牛奶 | 蜜桃av鲁一鲁一鲁一鲁 | 亚洲精品久久久久久国产精华液 | 一区二区在线 | 中文字幕第7页 | 日韩欧美在线视频 | 日韩免费视频一区二区 | 国产成人在线一区二区 | 国产三区视频在线观看 | 久热免费 | 欧美激情一区二区三区 | 亚洲国产一区二区在线 | 超碰在线播 | 亚洲国产成人精品女人久久久 | 久久国产精品-久久精品 | 亚洲国产一区二区三区 | 日韩中文字幕一区二区 | 免费特级黄毛片 | 一级毛片在线播放 | 国产传媒毛片精品视频第一次 | 久久日韩精品一区二区三区 | 色橹橹欧美在线观看视频高清 | 欧美日韩一区二区三区视频 | 日韩视频在线免费观看 | 国产欧美精品在线 |