程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP設計模式——單例模式

PHP設計模式——單例模式

編輯:關於PHP編程

PHP設計模式——單例模式


 

單例模式也稱單態,是23種設計模式中最簡單的一種,從他的名字就可以知道他的核心思想,單例模式就是系統中只有一個這樣的對象,對象只有一個,在Java或者C#中,單例模式一般有兩種,分別是懶漢式、餓漢式,但是在PHP中常用的就是懶漢式,由於PHP是單線程的,懶漢式也不存在雙重驗證。

 

懶漢式具體代碼:

 



        測試代碼:

 

 

$single1=Singleton::getInstance();
$single1->age=22;

$single2=Singleton::getInstance();

$single2->age=24;

echo 變量1的age:{$single1->age}
;
echo 變量2的age:{$single2->age}
;

我們可以看到,變量$single1,$single2的age都是24,說明變量$single1,$single2是一個變量,類Singleton是單例的。

 

 

通過以上代碼,我可以整理編寫單例模式的三個步驟:

1.創建一個類靜態變量

2.私有化構造函數與克隆函數,防止外部調用

3.提供一個外部可以調用的靜態方法,實例化第一步創建的靜態變量

 

很明顯,單例模式的適用場景就是系統中的對象只需要一個就可以的時候,例如,Java中Spring的Bean工廠,PHP中的數據庫連接等等,只要有這種需求就首先單例模式。

 


PHP面向對象設計模式

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved