設計模式 PHP實現單件模式的幾種方式

2022-02-13 01:12:53 字數 1027 閱讀 1948

單件模式是我們在開發中經常用到的一種設計模式,利用php5物件導向的特性,我們可以很容易的構建單件模式的應用,下面是單件模式在php中的幾種實現方法:

class

stat

return

self

::$instance;}

private

function

__construct()

private

function

__clone()    

function

sayhi()

}echo

stat

::getinstance()

->

sayhi();

這是一種最通常的方式,在乙個getinstance方法中返回唯一的類例項。

對這裡例子稍加修改,便可以產生乙個通用的方法,只要叫道任何你想用到單件的類裡,就可以了。

class

teacher

static

function

getinstance()

return

$instance;}

}echo

teacher

::getinstance()

->

sayhi();

最後一種是提供乙個singleton類,然後通過呼叫getinstance方法,可以為任何乙個類生產出乙個例項來。

class

singleton

$instance

=$instances

[$class

];return

$instance;}

}class

people

}echo""

;echo

singleton

::getinstance(

'people')

->

sayhi();

通過這三種方法,我們可以很容易的應用單件模式,如果能夠結合工廠模式,將使我們的程式設計變得更有條理和效率。

設計模式 PHP實現單件模式的幾種

單件模式是我們在開發中經常用到的一種設計模式,利用php5物件導向的特性,我們可以很容易的構建單件模式的應用,下面是單件模式在php中的幾種實現方法 class stat return self instance private function construct private function...

設計模式 單件模式

1 1 singleton.h ifndef singleton h define singleton h include using namespace std class singleton 構構函式,防止拷貝構造另乙個例項,作為protected singleton 析構函式,作為protec...

設計模式 單件模式

2015年1月29日16 02 59 單件模式是用來保證共有資源唯一性的設計模式,舉個例子吧,假如我們是藝人,我們在同乙個經紀人的協助下開展工作,我們可以委託這個經紀人做一些事情,但是我們不能委託經紀人在幫你做報表的同時幫我訂外賣。用程式猿的語言來表達就是,我們可能在多處地方持有對同一資源的引用。由...