<?php
class
single
# 建立乙個靜態方法,因為不能再例項物件
public
static
function
getinface()
return self:
:$obj;}
# 私有化 轉殖方法,不允許轉殖這個類
private
function
__clone()
public
function
index()
}$obj
= single:
:getinface()
;$new_obj
= single:
:getinface()
;// 私有化構造方法,則不能例項化物件
// $new_obj = new single();
// var_dump($new_obj);
/*私有化構造方法,不允許轉殖此類
$new_obj = clone new single();
var_dump($obj);
*/echo
$obj
->
index()
;# 單例模式,類中只有乙個物件
var_dump
($obj
===$new_obj
);
PHP單例模式
模式對於oop開發人員尤其有用,因為他有助於建立穩定的api,並且仍然保持一定的靈活度。一種模式可以幫助我們定義負責完成特定任務的物件,還可以允許我們全部修改掉某個類而不用修改與這些類打交道的 前者被稱為類的職責,後者被稱為類的多型性。單例模式被當作職責模式,他用來在應用程式中建立乙個單一的功能訪問...
php單例模式
單例模式 單例類 1 建構函式需要標記為private 訪問控制 防止外部 使用new操作符建立物件 單例類不能在其他類中例項化,只能被其自身例項化 2 擁有乙個儲存類的例項的靜態成員變數 3 擁有乙個訪問這個例項的公共的靜態方法 常用getinstance 方法進行例項化單例類,通過instanc...
php 單例模式
單例模式 身份證號碼 單例類identitycardno 身份證號碼類 class identitycardno public function getinstance else return self instance private function setidentitycardno no p...