国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP單例模式的學習筆記

2024-09-04 11:43:41
字體:
來源:轉載
供稿:網友

作為對象的創建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統全局地提供這個實例,它不會創建實例副本,而是會向單例類內部存儲的實例返回一個引用.

單例模式的特點:

1、構造函數需要標記為private(訪問控制:防止外部代碼使用new操作符創建對象),單例類不能在其他類中實例化,只能被其自身實例化;

2、擁有一個保存類的實例的靜態成員變量

3、擁有一個訪問這個實例的公共的靜態方法(常用getInstance()方法進行實例化單例類,通過instanceof操作符可以檢測到類是否已經被實例化)

另外,需要創建__clone()方法防止對象被復制(克?。?/p>

DEMO(鏈接數據庫):代碼如下:

  1. /* 例子:數據庫連接職責的集中控制 */ 
  2. class Database {  
  3.    
  4. private $_db;  
  5. static $_instance;  
  6.    
  7. private function __construct() {  
  8. $this->_db = pg_connect('dbname=example_db');  
  9. }  
  10.    
  11. private __clone() {};  
  12.    
  13. public static function getInstance() {  
  14.  if(! (self::$_instance instanceof self) )  
  15.  {  
  16.  self::$_instance = new self();  
  17.  }  
  18.  return self::$_instance;  
  19.    
  20. }  
  21.    
  22. public function query($sql) {  
  23. // 使用 $this->_db 執行一個查詢  
  24. return pg_query($this->_db, $sql);  
  25. }  

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建平县| 德安县| 佛山市| 梅河口市| 九龙城区| 东港市| 从化市| 洛隆县| 武定县| 定边县| 山西省| 丹阳市| 藁城市| 皋兰县| 武穴市| 米易县| 游戏| 祁连县| 西昌市| 安庆市| 达州市| 大同市| 和林格尔县| 泸西县| 宽甸| 翁牛特旗| 凤冈县| 江门市| 桐柏县| 武安市| 舒兰市| 清镇市| 高邮市| 台江县| 离岛区| 巨野县| 镇赉县| 淳安县| 南乐县| 威远县| 江陵县|