php单例模式连接数据库封装类

单例模式有三大原则:

构造函数不能为public

有一个保存实例的静态成员变量

拥有访问这个实例的公共静态方法


基于单例模式的php数据库连接类:

class Db{
	static private $_instance;
	static private $_connectSource;
	private $_dbConfig = array(
		'host' => '127.0.0.1',
		'user' => 'root',
		'password' => 'root',
		'database' =>'数据库名',
	);
	private function __construct(){

	}
	static public function getInstance(){
		if(!(self::$_instance instanceof self)){
			self::$_instance = new self();
		}
		return self::$_instance;
	}

	public function connect(){
		if(!self::$_connectSource){
			self::$_connectSource = mysql_connect($this->_dbConfig['host'],$this->_dbConfig['user'],$this->_dbConfig['password']);
			if(!self::$_connectSource){
				die('mysql error'.mysql_error());
			}

			mysql_select_db($this->_dbConfig['database'],self::$_connectSource);
			mysql_query("set names UTF8",self::$_connectSource);
		}
		return self::$_connectSource;
	}
}

使用的时候直接实例化就可以:比如:

$connect = Db::getInstance()->connect();


内有有参考《php接口开发》视频教程

你可能感兴趣的:(PHP接口开发)