php單例模式

2021-10-24 23:53:13 字數 725 閱讀 6696

<?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...