摘要:大佬看完如果發(fā)現(xiàn)鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打單例單元素模式實現(xiàn)來自說明通過提供對自身共享實例對訪問,單元素單例設(shè)計模式用于限制特定對象只能被創(chuàng)建一次。
整理一下自己的學(xué)習(xí)Aaron Saray 寫的PHP設(shè)計模式一些demo和自己的理解。大佬看完如果發(fā)現(xiàn)鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打
/** * Singleton 單例(單元素)模式實現(xiàn) * ------------------------------------- * ** 來自說明 ** * * 通過提供對自身共享實例對訪問,單元素(單例)設(shè)計模式用于限制特定對象只能被創(chuàng)建一次。 * 此對象可能最多存儲自身的5個實例,如果出現(xiàn)第6個請求,那么不得不等待。 * 或者只是提供對先前創(chuàng)建的5個實例之一的引用在排隊請求中,這種體系結(jié)構(gòu)類型特別有用 * * ===================================== * ** 應(yīng)用場景 ** * * 最常用于數(shù)據(jù)庫連接對象,數(shù)據(jù)庫訪問對象可以負(fù)責(zé)創(chuàng)建一個與數(shù)據(jù)庫的實例化連接。 * 接下來,只要調(diào)用這個對象的特定方法,該對象就會使用已成功創(chuàng)建的連接。 * 從而減少服務(wù)器開銷 * ------------------------------------- * * @version ${Id}$ * @author Shaowei Pu*/
* @CreateTime 2017-02-08T11:20:19+0800 * @return [type] [description] */ private function __clone(){} /** * [__construct 不能new啦] * @author Shaowei Pu* @CreateTime 2017-02-08T11:18:09+0800 */ private function __construct(){ try{ $this->pdo =new PDO("mysql:dbname=數(shù)據(jù)庫名字;host=127.0.0.1,root,123456"); $this->pdo->exec("SET NAMES utf8");//設(shè)置通信編碼 $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); }catch(PDOException $e){ die("error:".$e->getMessage()); } } /** * [getinstance 單例開始] * @author Shaowei Pu * @CreateTime 2017-02-08T11:21:31+0800 * @return [type] [description] */ public static function getInstance(){ // 檢測其并不是本類實例 if( !self::$_instance instanceof self ){ self::$_instance = new self; } return self::$_instance; } /** * [select 簡單查詢操作] * @author Shaowei Pu * @CreateTime 2017-02-08T12:11:06+0800 * @param [type] $dbname [description] * @param [type] $filed [description] * @param [type] $where [description] * @return [type] [description] */ public function select($dbname,$filed,$where) { $stmt = self::$_pdo ->prepare(" SELECT {$filed} FROM {$dbname} {$where}"); $stmt->execute(); return $stmt->fetchAll(PDO::FETCH_ASSOC); } } Singleton::getInstance();
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/22403.html
摘要:大佬看完如果發(fā)現(xiàn)鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打單例單元素模式實現(xiàn)來自說明通過提供對自身共享實例對訪問,單元素單例設(shè)計模式用于限制特定對象只能被創(chuàng)建一次。 整理一下自己的學(xué)習(xí)Aaron Saray 寫的PHP設(shè)計模式一些demo和自己的理解。大佬看完如果發(fā)現(xiàn)鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打 /** * Singleton 單例(單元素)模式實現(xiàn) * -----...
摘要:單例模式用于為一個類生成一個唯一的對象。作為對象的創(chuàng)建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統(tǒng)提供這個實例,這個類稱為單例類。 單例模式(Singleton):用于為一個類生成一個唯一的對象。最常用的地方是數(shù)據(jù)庫連接。 使用單例模式生成一個對象后,該對象可以被其它眾多對象所使用。 作為對象的創(chuàng)建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系...
閱讀 3170·2021-09-08 10:43
閱讀 1096·2019-08-30 15:53
閱讀 1096·2019-08-30 13:51
閱讀 925·2019-08-29 14:03
閱讀 876·2019-08-26 18:35
閱讀 1294·2019-08-26 13:38
閱讀 1677·2019-08-26 10:34
閱讀 3578·2019-08-26 10:21