亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

php單例模式實(shí)現(xiàn)(對(duì)象只被創(chuàng)建一次)

 更新時(shí)間:2012年12月05日 23:19:31   作者:  
這是我在php面試題中遇到的一道試題,單例模式按字面來看就是某一個(gè)類只有一個(gè)實(shí)例,這樣做的好處還是很大的,比如說數(shù)據(jù)庫(kù)的連接,我們只需要實(shí)例化一次,不需要每次都去new了,這樣極大的降低了資源的耗費(fèi)

單例類至少擁有以下三種公共元素:

    必須擁有一個(gè)構(gòu)造函數(shù),并且必須被標(biāo)記為private。
    擁有一個(gè)保存類的實(shí)例的靜態(tài)成員變量。
    擁有一個(gè)訪問這個(gè)實(shí)例的公共的靜態(tài)方法

具體使用方面,我在下面php實(shí)例中注釋的很清楚:

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

<?php
 /**
  * by www.phpddt.com
  */
 class Mysql{
  //該屬性用來保存實(shí)例
  private static $conn;
  //構(gòu)造函數(shù)為private,防止創(chuàng)建對(duì)象
  private function __construct(){
   $this->conn = mysql_connect('localhost','root','');
  }
  //創(chuàng)建一個(gè)用來實(shí)例化對(duì)象的方法
  public static function getInstance(){
   if(!(self::$conn instanceof self)){
    self::$conn = new self;
   }
   return self::$conn;
  }
  //防止對(duì)象被復(fù)制
  public function __clone(){
   trigger_error('Clone is not allowed !');
  }

 }
 //只能這樣取得實(shí)例,不能new 和 clone
 $mysql = Mysql::getInstance();
?>

相關(guān)文章

最新評(píng)論