<?php
/**
* 單例模式實現
*/
class Singleton
{
//靜態變數儲存全域性例項
private static $instance = null;
private function __clone()
{
//私有建構函式,防止外界例項化物件
}
private function __construct()
{
//私有克隆函式,防止外界克隆物件
}
//靜態方法,單例統一訪問入口
public static function getInstance()
{
if (self::$instance instanceof Singleton) {
echo "return exist instance
";
return self::$instance;
}
self::$instance = new Singleton();
echo "return new instance
";
return self::$instance;
}
}
$a = Singleton::getInstance();//output: return new instance
$a = Singleton::getInstance();//output: return exist instance
PHP實現單例模式
相關文章
- 【php實現設計模式】之單例模式PHP設計模式單例
- php單例模式PHP單例模式
- PHP 單例模式優點意義及如何實現PHP單例模式
- golang實現單例模式Golang單例模式
- Rust實現單例模式Rust單例模式
- PHP 單例模式理解PHP單例模式
- PHP單例模式理解PHP單例模式
- PHP之單例模式PHP單例模式
- PHP-單例模式PHP單例模式
- 單例模式實現對比單例模式
- 單例模式c++實現單例模式C++
- Python中實現單例模式Python單例模式
- PHP單例模式模擬Java Bean實現方法示例詳解PHP單例模式JavaBean
- PHP 設計模式之——單例模式PHP設計模式單例
- PHP 設計模式之單例模式PHP設計模式單例
- PHP設計模式之單例模式PHP設計模式單例
- 單例模式 – 單例登錄檔與 Spring 實現單例剖析單例模式Spring
- DCL單例模式中的缺陷及單例模式的其他實現單例模式
- JS中的單例模式及單例模式原型類的實現JS單例模式原型
- 用Python實現設計模式——單例模式Python設計模式單例
- 利用static來實現單例模式單例模式
- 單例模式:5種實現方式單例模式
- 單例模式的各種實現單例模式
- PHP設計模式(四)單例模式(Singleton)PHP設計模式單例
- Go 實現常用設計模式(一)單例模式Go設計模式單例
- Java 利用列舉實現單例模式Java單例模式
- 單例模式的 Java 實現與思考單例模式Java
- 五種方式實現 Java 單例模式Java單例模式
- Python 5種方法實現單例模式Python單例模式
- PHP設計模式(一)—單例模式(Singleton Pattern)PHP設計模式單例
- Python 實現工廠模式、抽象工廠,單例模式Python模式抽象單例
- 設計模式:單例模式的使用和實現(JAVA)設計模式單例Java
- 設計模式學習-使用go實現單例模式設計模式Go單例
- Java 實現單例模式的 9 種方法Java單例模式
- Python單例模式(Singleton)的N種實現Python單例模式
- 單例模式的各種實現方式(Java)單例模式Java
- JS實現單例模式的多種方案JS單例模式
- 美團一面:會單例模式嗎,寫個單例看看?(8大單例模式實現方式總結)單例模式