我正在开发一个项目,我有几个不同的类需要连接到MySQL数据库。我的问题是如何有效地从实例化的类中完成此操作。我已经知道打开和关闭多个连接是一个坏主意,使用全局变量也不是一个很好的选择......那么还有什么其他选择?在这种情况下访问数据库是否有标准或最佳实用程度?我还是一个初学程序员。
答案 0 :(得分:2)
建立连接,然后将该连接对象传递给需要它作为构造函数参数的每个类。
class myClass {
function __construct($db) {
$this->db = $db;
}
function doStuff($someQuery) {
$result = $this->db->query($someQuery);
// fetch data here...
return $someData;
}
}
然后
$db = new mysqli($host, $user, $password, $dbname);
$someObject = new myClass($db);
$data = $someObject->doStuff($myQuery);