欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

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

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

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

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

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

相關(guān)文章

最新評論