成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

php中單例模式-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了php中單例模式,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶大家一起來(lái)研究并學(xué)習(xí)一下“php中單例模式”這篇文章吧。

創(chuàng)新互聯(lián)專(zhuān)業(yè)為企業(yè)提供將樂(lè)網(wǎng)站建設(shè)、將樂(lè)做網(wǎng)站、將樂(lè)網(wǎng)站設(shè)計(jì)、將樂(lè)網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、將樂(lè)企業(yè)網(wǎng)站模板建站服務(wù),10多年將樂(lè)做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

php有什么用

php是一個(gè)嵌套的縮寫(xiě)名稱(chēng),是英文超級(jí)文本預(yù)處理語(yǔ)言,它的語(yǔ)法混合了C、Java、Perl以及php自創(chuàng)新的語(yǔ)法,主要用來(lái)做網(wǎng)站開(kāi)發(fā),許多小型網(wǎng)站都用php開(kāi)發(fā),因?yàn)閜hp是開(kāi)源的,從而使得php經(jīng)久不衰。

1.單例模式的由來(lái)

類(lèi)是對(duì)現(xiàn)實(shí)生活中一類(lèi)具有共同特征的事物的抽象,通過(guò)類(lèi)的實(shí)例化,產(chǎn)生了許多的對(duì)象,但同時(shí)也產(chǎn)生了大量資源的消耗(例如在連接數(shù)據(jù)庫(kù)時(shí)連接數(shù)量的限制,又例如在計(jì)算機(jī)中打開(kāi)資源管理器卻具有性),由此也產(chǎn)生了對(duì)類(lèi)的實(shí)例化進(jìn)行了限定的需求,為了保護(hù)資源的性,由此產(chǎn)生了單例模式。

2.單例模式的定義

定義:?jiǎn)卫J絪ingleton,是一種類(lèi)的設(shè)計(jì)只會(huì)最多產(chǎn)生一個(gè)對(duì)象的設(shè)計(jì)思想。

3.單例模式的實(shí)例

  a.創(chuàng)建一個(gè)空類(lèi) 。

<?php
   class Use{
   }
   $a=new Use();//實(shí)例化一個(gè)對(duì)象
?>

b.能夠多次實(shí)例化類(lèi),是產(chǎn)生多個(gè)對(duì)象的原因,所以可以通過(guò)私有化構(gòu)造方法。

<?php
  class Use{
    private function __construct()
    {
      echo __FUNCTION__."<br>";
    }
   }
?>

c.私有化構(gòu)造方法使得實(shí)例化對(duì)象產(chǎn)生的數(shù)目為0,由此可以通過(guò)在類(lèi)的內(nèi)部,通過(guò)靜態(tài)方法調(diào)用構(gòu)造方法,然后將構(gòu)造方法返回至外部。

<?php
  class Use{
    private function __construct()
    {
     echo __FUNCTION__."<br>";
    }
    public static function getInstance()
    {
      return new self();
        }
   }
  $s1=Use::getSingleton();
?>

d.通過(guò)上述的方法雖然能夠?qū)嵗瘜?duì)象,但是同時(shí)也將構(gòu)造方法的使用權(quán)限外放出去。如果想要該方法只返回一個(gè)對(duì)象,就得保證類(lèi)內(nèi)部有辦法存著某個(gè)產(chǎn)生的對(duì)象,第一次產(chǎn)生新的,后面返回舊的。此時(shí)需要使用靜態(tài)屬性。

<?php
  class Use{
    private static $object = NULL;//初始化為NULL,沒(méi)有對(duì)象 
    
    private function __construct()
    {
      echo __FUNCTION__."<br>";
    }
    
    public static function getInstance()
    {  
      //判斷類(lèi)內(nèi)部的靜態(tài)屬性是否存在對(duì)象
       if(!(self::$object instanceof self)){   //當(dāng)前保存的內(nèi)容不是當(dāng)前類(lèi)的對(duì)象
       self::$object = new self();
    }
      //返回對(duì)象給外部
       return self::$object;
    }
   }
  $s1=Use::getSingleton();
?>

e.此時(shí)可以保證,通過(guò)調(diào)用靜態(tài)方法只得到一個(gè)對(duì)象。但是依舊可以通過(guò)克隆,不停的實(shí)例化新的對(duì)象,所以可以將克隆私有化。

<?php
  class Use{
    private static $object = NULL;//初始化為NULL,沒(méi)有對(duì)象 
    
    private function __construct()
    {
      echo __FUNCTION__."<br>";
    }
    
    public static function getInstance()
    {  
      //判斷類(lèi)內(nèi)部的靜態(tài)屬性是否存在對(duì)象
       if(!(self::$object instanceof self)){   //當(dāng)前保存的內(nèi)容不是當(dāng)前類(lèi)的對(duì)象
           self::$object = new self();
       }
      //返回對(duì)象給外部
       return self::$object;
    }
    
    
    private function __clone(){}   
   }
  $s1=Use::getSingleton();
?>

以上就是關(guān)于“php中單例模式”的內(nèi)容,如果改文章對(duì)你有所幫助并覺(jué)得寫(xiě)得不錯(cuò),勞請(qǐng)分享給你的好友一起學(xué)習(xí)新知識(shí),若想了解更多相關(guān)知識(shí)內(nèi)容,請(qǐng)多多關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

名稱(chēng)欄目:php中單例模式-創(chuàng)新互聯(lián)
本文鏈接:http://jinyejixie.com/article28/deodcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)網(wǎng)站設(shè)計(jì)公司、企業(yè)網(wǎng)站制作App開(kāi)發(fā)、搜索引擎優(yōu)化做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)
井研县| 江源县| 邳州市| 楚雄市| 鄂伦春自治旗| 南郑县| 宜州市| 南陵县| 广平县| 武威市| 忻城县| 清河县| 弋阳县| 永平县| 长岭县| 汉寿县| 聂拉木县| 怀远县| 长岛县| 越西县| 米泉市| 曲沃县| 象山县| 海安县| 阜南县| 安福县| 通城县| 景德镇市| 马山县| 绥宁县| 宜春市| 四会市| 广昌县| 婺源县| 朝阳市| 阳曲县| 中卫市| 抚州市| 阜平县| 扎赉特旗| 若尔盖县|