>我有一个名为DB的类,它是一个PDO数据库包装器。它具有选择,更新,插入和删除表记录的功能。
class db {
public $conn; //PDO
public function __construct()
{...
}
public function select($table, $fields = '*' , $where = '1=1', $params = array()) {
....
}
}
我通过此方法在另一个类中访问该类的功能:
class MyAPI extends API
{
public $db;
public function __construct($request) {
parent::__construct($request);
$this->db = new db();
}
public function dosomething()
{
$this->db->select(...);
}
}
这是正确的方法吗?我的意思是在主类中创建 db 类的对象并访问它。在面向对象编程方面,这能以更好的方式完成吗?
我强烈建议使用。
public static function getInstance(){
if(!isset(self::$_instance)){
self::$_instance = new DB();
echo "Connected";
}
return self::$_instance;
}
和
$this->db = DB::getInstance();
这样您就不会多次实例化数据库类。这将提高代码的效率。并减少数据库的负载,因为您只连接到数据库一次。