我已经用PHP编写了一个类来访问Mysql并对其进行一些操作。但是,我不知道如何为数据库连接定义私有变量,因此我不需要在每个方法中定义它现在,我在每个方法中定义连接并且知道这不是正确的方法。请查看我的代码并告诉我如何优化它。请注意构造方法。
class SimpleClass
{
var $data = array();
var $db=0;
function SimpleClass(){
$this->$db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
$this->$db->connect();
}
public function test()
{
$db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
$db->connect();
$q="SELECT * FROM `tbl_test`;";
$rows = $db->query($q);
while ($record = $db->fetch_array($rows)) {
//...........codes
}
}
}
答案 0 :(得分:0)
class SimpleClass
{
private $db;
function SimpleClass(){
$this->db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
$this->db->connect();
}
public function test()
{
$q="SELECT * FROM `tbl_test`;";
$rows = $this->db->query($q);
while ($record = $this->db->fetch_array($rows)) {
//...........codes
}
}
}
答案 1 :(得分:0)
private $data = array();
private $db=0;
访问这些字段是这样的:
$this->db = 5;
注意db前面缺少的$!
对于所有其他成员函数,请在变量前加上$ this->并删除变量的$符号!
您还应该使用相同的$ this-> FUNCTION_NAME模式调用成员函数。