溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP單態(tài)設計模式應用實例

發(fā)布時間:2020-07-20 02:11:47 來源:網(wǎng)絡 閱讀:262 作者:penyanlu 欄目:web開發(fā)

PHP單態(tài)設計模式應用實例

單態(tài)設計模式通常包含以下三點:

   

  · 一個私有的構造方法;(確保用戶無法通過創(chuàng)建對象對其進行實例化)

  · 一個公有的 靜態(tài)的 方法;(負責對其本身進行實例化)

  · 一個私有的 靜態(tài)的 屬性;(用于保存僅有的一個實例化對象)

 

單態(tài)設計模式要求的是僅有一個對象的實例,并且提供一個訪問點

單例模式(Singleton)用于為一個類生成一個唯一的對象。最常用的地方是數(shù)據(jù)庫連接

<?php

class singlemode

{

private static $instance=null;

private function __construct(){}

public static function getinstance($obj)

{

if(self::$instance===null)

{

self::$instance=new $obj();

return self::$instance;

}

}

public function __clone()

{

trigger_error('not allowed clone!',E_USER_ERROR);

}

public function usedisplay($method)

{

self::$instance->$method();

}

}

class test

{

public $id=null;

public function __construct()

{

}

public function display()

{

echo '單態(tài)設計模式測試!';

}

}

header('content-type:text/html;charset=utf-8');

$single=singlemode::getinstance('test');

$single->display();

$single->id=5;

echo '<br/>'.$single->id;

$single1=singlemode::getinstance('test');

echo '<br/>'.$single->id.'<br/>';

?>


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI