使用單例模式建立乙個資料庫連線簡單示例

2022-08-19 11:42:13 字數 968 閱讀 8819

<?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都會消耗大量的記憶體資源和系統資...