我正在为一所学校的项目工作(六月截止日期;给予充足的时间^^)。
目前conf.php中有一个数据库(每隔一个.php包含一个;它有一个引用mysqli对象的变量),我通过“global”访问每个类的方法中的数据库$ db_conn;”。 问题是,如果我只打开class.php,它不包括conf.php,它会抛出错误。所以我想到为每个对象添加mysqli-Object的私有实例/静态变量。 这不起作用(意外的T_NEW):
class foo{
private static $db_conn = new mysqli("", "", "", "");
}
如何处理数据库连接? 你会如何处理这个具体问题?
提前致谢^^
答案 0 :(得分:0)
您可以在其他文件和类文件中使用include_once
conf.php文件。这样你总是有内容(和db引用)。
答案 1 :(得分:-1)
如果你的数据库连接是Singleton类和你有一个__autoload()
函数,那么你可以在你设置的每个类中都有一个dbconnection属性施工期间。
e.g。
class DBConnection{
private static $instance;
private function __construct(){
//make your db connnection
}
public static function get_connection(){
if(empty self::$instance) self::$instance = new DBConnection;
return self::$instance;
}
}
class Foo {
private $db;
function __construct(){
$this->db=DBConnection::get_connection();
}
}