php数据库基类class DataBase
{
//主机地址、用户名、密码、数据库名、字符编码等等 public function __construct($param)
{
} public function insertData($table, $data)
{ } public function updateData($table, $data, $where = '')
{ } public function deleteData($tabel, $where = '')
{ } public function fetchRow($table, $where = '')
{ } //
…………
}大家用数据库基类是怎么用啊,我一直是实例化它,就像下面$db = new DataBase($param);class Model
{
function addModel($data)
{
global $db;
$db->isnertData('model', $data);
} //other function
…………
}
今天看到有的地方直接继承数据库基类,就像下面class Model extends DataBase
{
fucntion addModel($data)
{
$this->insertData('model', $data);
} //other function
…………
}大家一般怎么用啊,那样更好啊
{
//主机地址、用户名、密码、数据库名、字符编码等等 public function __construct($param)
{
} public function insertData($table, $data)
{ } public function updateData($table, $data, $where = '')
{ } public function deleteData($tabel, $where = '')
{ } public function fetchRow($table, $where = '')
{ } //
…………
}大家用数据库基类是怎么用啊,我一直是实例化它,就像下面$db = new DataBase($param);class Model
{
function addModel($data)
{
global $db;
$db->isnertData('model', $data);
} //other function
…………
}
今天看到有的地方直接继承数据库基类,就像下面class Model extends DataBase
{
fucntion addModel($data)
{
$this->insertData('model', $data);
} //other function
…………
}大家一般怎么用啊,那样更好啊
如果你的其它模块都继承Model类 明显第二种好
class Model
{
private $db;
public function __construct($param)
{
$this->db = new DataBase($param);
}
public function addModel($data)
{
$this->db->insertData('model', $data);
} //other function
…………
}//我喜欢这样
任何地方,DB::getInstance() 即可,
为方便,当然也可以在__contruct 里写$this->db=Db::getInstance();
第一种的不好是global,尽量避免
第二种的不好是继承了db类就不能继承别的类了.