摘要:大佬看完如果發現鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打單例單元素模式實現來自說明通過提供對自身共享實例對訪問,單元素單例設計模式用于限制特定對象只能被創建一次。
整理一下自己的學習Aaron Saray 寫的PHP設計模式一些demo和自己的理解。大佬看完如果發現鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打
/** * Singleton 單例(單元素)模式實現 * ------------------------------------- * ** 來自說明 ** * * 通過提供對自身共享實例對訪問,單元素(單例)設計模式用于限制特定對象只能被創建一次。 * 此對象可能最多存儲自身的5個實例,如果出現第6個請求,那么不得不等待。 * 或者只是提供對先前創建的5個實例之一的引用在排隊請求中,這種體系結構類型特別有用 * * ===================================== * ** 應用場景 ** * * 最常用于數據庫連接對象,數據庫訪問對象可以負責創建一個與數據庫的實例化連接。 * 接下來,只要調用這個對象的特定方法,該對象就會使用已成功創建的連接。 * 從而減少服務器開銷 * ------------------------------------- * * @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=數據庫名字;host=127.0.0.1,root,123456"); $this->pdo->exec("SET NAMES utf8");//設置通信編碼 $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();
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/22403.html
摘要:大佬看完如果發現鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打單例單元素模式實現來自說明通過提供對自身共享實例對訪問,單元素單例設計模式用于限制特定對象只能被創建一次。 整理一下自己的學習Aaron Saray 寫的PHP設計模式一些demo和自己的理解。大佬看完如果發現鄙人理解有誤請立即指出,感謝拍磚,跪求鞭打 /** * Singleton 單例(單元素)模式實現 * -----...
摘要:單例模式用于為一個類生成一個唯一的對象。作為對象的創建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統提供這個實例,這個類稱為單例類。 單例模式(Singleton):用于為一個類生成一個唯一的對象。最常用的地方是數據庫連接。 使用單例模式生成一個對象后,該對象可以被其它眾多對象所使用。 作為對象的創建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系...
閱讀 3028·2021-09-08 10:43
閱讀 1031·2019-08-30 15:53
閱讀 965·2019-08-30 13:51
閱讀 836·2019-08-29 14:03
閱讀 796·2019-08-26 18:35
閱讀 1229·2019-08-26 13:38
閱讀 1580·2019-08-26 10:34
閱讀 3497·2019-08-26 10:21