亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問哪一段代碼保證了不管new多少次都只有一個數據庫連接(即所謂的單例模式)

有沒有大神能夠解釋一下

正在回答

2 回答

class?User?{?
????//靜態變量保存全局實例
????private?static?$_instance?=?null;
????//私有構造函數,防止外界實例化對象
????private?function?__construct()?{
????}????
????//靜態方法,單例統一訪問入口
????static?public?function?getInstance()?{
????????if?(is_null?(?self::$_instance?)?||?isset?(?self::$_instance?))?{
????????????self::$_instance?=?new?self?();
????????}
????????return?self::$_instance;
????}
}

使用單例模式可以避免大量的new操作。因為每一次new操作都會消耗系統和內存的資源。

0 回復 有任何疑惑可以回復我~
#1

葉師傅 提問者

非常感謝!
2015-09-18 回復 有任何疑惑可以回復我~

首先將構造函數私有化(也就是無法實例化對象),必須 $user = User::getInstance() ?來實例化對象,如果之前實例化過就直接return

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問哪一段代碼保證了不管new多少次都只有一個數據庫連接(即所謂的單例模式)

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號