<?php/**describe:單例模式 資料庫類
單例模式的必要條件
(1)私有的構造方法-為了防止在類外使用new關鍵字例項化物件
(2)私有的成員屬性-為了防止在類外引入這個存放物件的屬性
(3)私有的轉殖方法-為了防止在類外通過clone成生另乙個物件
(4)公有的靜態方法-為了讓使用者進行例項化物件的操作
*/header("content-type:text/html;charset=utf-8");
class
dbsingleton
//修改資料庫連線字符集為 utf8
mysqli_set_charset($link, $this->charset);
return
$link
; }
//私有的轉殖方法-為了防止在類外通過clone成生另乙個物件
private
function
__clone()
//公有的靜態方法-為了讓使用者進行例項化物件的操作
public
static
function getinstance($host, $username, $password, $dbname, $port
)
return self::$instance
; }}//
測試://$host = '127.0.0.1';
//$username = 'root';
//$password = '123456';
//$dbname = 'test';
//$port = 3306;
//$db = dbsingleton::getinstance($host, $username, $password, $dbname, $port);
//var_dump($db);
用單例模式封裝實現乙個資料庫類
使用單例模式的出發點 1 php的應用主要在於資料庫應用,所以乙個應用中會存在大量的資料庫操作,使用單例模式,則可以避免大量的new 操作消耗的資源。2 如果系統中需要有乙個類來全域性控制某些配置資訊,那麼使用單例模式可以很方便的實現.這個可以參看zf的frontcontroller部分。3 在一次...
設計模式 單例模式的資料庫連線
1 protected 定義私有函式,只可以被同一包中的類所訪問 2 public 定義公共函式 3 self ins 呼叫當前類的靜態方法,自 php 5.3.0 後可用 this例 單例模式的資料庫連線 class dbclassmanage return self ins public con...
php單例模式使用例項之資料庫連線
單例模式是指整個應用中類只有乙個物件例項的設計模式。我用php大部分操作都是和各種資料庫打交道,包括mysql,redis,memcache等各種關係型和非關係型資料庫,所以乙個應用中會 存在大量連線資料庫的操作,如果不用單例模式,那每次都要new操作,但是每次new都會消耗大量的記憶體資源和系統資...