最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php實現(xiàn)設(shè)計模式中的單例模式詳解

 更新時間:2014年10月11日 09:51:48   投稿:junjie  
這篇文章主要介紹了php實現(xiàn)設(shè)計模式中的單例模式詳解,本文詳細(xì)講解了php中的單例模式,并給出了代碼實例,需要的朋友可以參考下

【概要】

保證一個類僅有一個實例,并且提供一個訪問它的全局訪問點【GOF95】

【特點】

1、一個類只有一個實例
2、它必須自行創(chuàng)建這個實例
3、必須自行向整個系統(tǒng)提供這個實例

【結(jié)構(gòu)圖】

【主要角色】

Singleton定義一個Instance操作,允許客戶訪問它的唯一實例。Instance是一個類方法。負(fù)責(zé)創(chuàng)建它的唯一的實例。

【優(yōu)缺點】

1、對唯一實例的受控訪問
2、縮小命名空間 單例模式是對全局變量的一種改進。它避免了那些存儲唯一實例的全局變量污染命名空間
3、允許對操作和表示的精華 單例類可以有子類。而且用這個擴展類的實例來配置一個應(yīng)用是很容易的。你可以用你所需要的類的實例在運行時刻配置應(yīng)用。
4、允許可變數(shù)目的實例(多例模式)
5、比類操作更靈活

【適用性】

1、當(dāng)類只能有一個實例而且客戶可以從一個眾所周知的訪問點訪問它時
2、當(dāng)這個唯一實例應(yīng)該是通過子類化可擴展的。并且用戶應(yīng)該無需更改代碼就能使用一個擴展的實例時。

【單例模式php實例】

復(fù)制代碼 代碼如下:

<?php
 /**
 * 單例模式
 * -------------
 * @author   zhaoxuejie <zxj198468@gmail.com>
 * @package  design pattern
 * @version  v1.0 2011-12-14
 */
class Singleton {
 
 //私有靜態(tài)成員變量,保存全局實例
 private static $instance = NULL;
 
 //私有構(gòu)造方法,保證外界無法直接實例化
 private function __construct(){}
 
 //靜態(tài)方法,返回此類唯一實例
 public static function getInstance(){
  if(!isset(self::$instance)){
   $c = __CLASS__;
   self::$instance = new $c;
  }
  return self::$instance;
 }
 
 //測試用方法
 public function info(){
  return 'ok';
 }
 
 //防止克隆
 public function __clone(){
  trigger_error('Clone is not allowed.', E_USER_ERROR);
 }
}

$s = Singleton::getInstance();
echo $s->info();
?>

相關(guān)文章

  • php數(shù)值轉(zhuǎn)換時間及時間轉(zhuǎn)換數(shù)值用法示例

    php數(shù)值轉(zhuǎn)換時間及時間轉(zhuǎn)換數(shù)值用法示例

    這篇文章主要介紹了php數(shù)值轉(zhuǎn)換時間及時間轉(zhuǎn)換數(shù)值用法,涉及php strtotime及date等函數(shù)實現(xiàn)日期的字符串格式與Unix時間戳格式轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下
    2017-05-05
  • PHP中單引號與雙引號的區(qū)別分析

    PHP中單引號與雙引號的區(qū)別分析

    在PHP中,我們可以使用單引號或者雙引號來表示字符串。不過我們作為開發(fā)者,應(yīng)該了解其中的區(qū)別。單引號與雙引號對于定義字符一個是可以解析變量一個是會把變量直接輸出來,同時單引號與雙引號在字符處理上單引號要優(yōu)與雙引號
    2014-08-08
  • PHP 表單提交給自己

    PHP 表單提交給自己

    使用PHP進行Web開發(fā),表單(Form)的使用隨處可見,利用其屬性Action和Method可以指定表單的內(nèi)容要發(fā)送處理的URL以及如何將表單數(shù)據(jù)發(fā)送到服務(wù)器。
    2008-07-07
  • PHP獲取路徑和目錄的方法總結(jié)【必看篇】

    PHP獲取路徑和目錄的方法總結(jié)【必看篇】

    下面小編就為大家?guī)硪黄狿HP獲取路徑和目錄的方法總結(jié)【必看篇】。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • php使用redis的幾種常見操作方式和用法示例

    php使用redis的幾種常見操作方式和用法示例

    這篇文章主要介紹了php使用redis的幾種常見操作方式和用法,結(jié)合實例形式總結(jié)分析了PHP使用redis實現(xiàn)字符串緩存、隊列模擬、樂觀鎖與悲觀鎖實現(xiàn)、發(fā)布和訂閱等相關(guān)操作技巧,需要的朋友可以參考下
    2020-02-02
  • PHP封裝的微信公眾平臺接口開發(fā)操作類完整示例

    PHP封裝的微信公眾平臺接口開發(fā)操作類完整示例

    這篇文章主要介紹了PHP封裝的微信公眾平臺接口開發(fā)操作類,結(jié)合完整實例形式分析了php微信開發(fā)所涉及的配置、驗證、接收、響應(yīng)、文本、語音、圖片等相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • PHP的單引號和雙引號 字符串效率

    PHP的單引號和雙引號 字符串效率

    經(jīng)常有人問我,聽說在PHP中處理字符串用單引號會快,那么如果存在變量替換的時候,是使用單引號連接快呢,還是雙引號快呢?
    2009-05-05
  • nginx下安裝php7+php5

    nginx下安裝php7+php5

    本文給大家分享的是在nginx下安裝php7,并且實現(xiàn)與php5共存,非常的實用,有需要的小伙伴可以參考下
    2016-07-07
  • PHP執(zhí)行zip與rar解壓縮方法實現(xiàn)代碼

    PHP執(zhí)行zip與rar解壓縮方法實現(xiàn)代碼

    PHP執(zhí)行zip與rar解壓縮方法 先放著,以后研究,有地方要用到。
    2010-12-12
  • [企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法

    [企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法

    這篇文章主要介紹了[企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法,涉及微信接口的修改相關(guān)操作,需要的朋友可以參考下
    2017-06-06

最新評論

洪雅县| 政和县| 沙坪坝区| 沈丘县| 临泉县| 宁波市| 普兰店市| 信丰县| 潍坊市| 华池县| 荥经县| 济源市| 镇沅| 大厂| 桃江县| 门源| 新化县| 大石桥市| 深水埗区| 玉山县| 库车县| 屏南县| 防城港市| 安吉县| 沁阳市| 玉屏| 巴林左旗| 内丘县| 汾西县| 乌兰浩特市| 满洲里市| 宁明县| 陇南市| 和政县| 个旧市| 富民县| 江油市| 兴业县| 应城市| 平原县| 中超|