用單例模式寫乙個php資料庫管理類

2021-06-19 21:46:16 字數 1229 閱讀 1198

用慣了codeigniter框架,現在突然要自己用原生php開發,還真有點不習慣。。。因為介面開發過程中需要進行資料庫的操作。。於是參考一些資料建立自己的

資料庫管理類: 

首先建立資料庫連線配置檔案:db.config.php 

/*資料庫配置檔案*/

//開發用資料庫

define('db_name', 'order');

/** mysql資料庫使用者名稱 */

define('db_user', 'devuser');

/** mysql資料庫密碼 */

define('db_password', 'devuser');

/** mysql主機名 */

define('db_host', 'localhost');

/** 建立資料表時預設的文字編碼 */

define('db_charset', 'utf8');

要習慣於把一些常量寫在乙個單獨的配置檔案中,這樣修改起來也比較方便....剛開始我開發的時候改來改去,真是乙個麻煩啊。。。

然後使用單例模式開發乙個簡單的dbmanager類: 

require_once("db.config.php");

/** * description of dbmanager

* 資料庫連線類

* @author

*/class dbmanager

mysql_query("set names utf8");

}public static function getinstance()

return self::$instance;

}public function executesql($sql=null)

public function insertdata($sql)

}

在需要呼叫該資料庫類的檔案中:

$dbm = dbmanager::getinstance();

$sql = "select record_time,data from order_t where record_time>$start_time and record_time<$end_time";

$result = $dbm->executesql($sql);

這樣乙個簡單的單例模式開發的資料庫連線類就可以使用了。。。。只要多思考,還有可以優化的地方。。

用單例模式來設計乙個PHP資料庫類

class nmdb private function clone public static function get class nmdb host,username,password return self instance 連線資料表 public function select db da...

Python 寫乙個單例模式

class amimal object a none b true def new cls,args,kwargs if not cls.a cls.a object.new cls 呼叫基類的 new 方法建立物件,修改類屬性 a return cls.a def init self,name,a...

寫乙個單例模式示例

要點 1.某個類只能有乙個例項 2.它必須自行建立這個例項 3.它必須自行向整個系統提供這個例項 幾種常見形式 餓漢式 懶漢式 延遲建立物件 懶漢式 1 構造器私有化 2 用乙個靜態變數儲存這個唯一的例項 3 提供乙個靜態方法,獲取這個例項物件 class singletondemo public ...