目前正在學習php,這是一個 單例模式的設計思想,剛學php,寫的可能不夠嚴謹,可是仍是 發出來 共享下 代碼:php
<?php
header("content-type:text/html;charset=utf-8");
//單例模式(只能實例化一個對象),三私一公
class p {
private static $instance; //私有靜態屬性,保存實例
private function __construct(){ //私有方法,保證在類外不能經過new來 實例化
}
public static function getInstance(){ //公有靜態方法,在類內得到對象,進行判斷,確保只能實例化一個對象
if(!is_object(self::$instance)) {
self::$instance = new P;
}
return self::$instance;
}
private function __clone(){ //私有克隆方法,確保在類外 克隆出 新對象。
}
}
$obj1 = p::getInstance();
$obj2 = p::getInstance();
$obj3 = p::getInstance();
//$obj3 = clone $result2;
var_dump($obj1,$obj2,$obj3); //print: object(p)#1 (0) { } object(p)#1 (0) { } object(p)#1 (0) { } , 實例ID一直爲1
?>html