我编写了一个用于处理MySQL查询的数据类,然后所有其他类(如login
,products
扩展此类以使用数据库。因此,每个页面加载会创建2个或更多数据库连接,因为类似于以下内容:
$login, parent::__construct(); // check login via db
$products, parent::__construct(); // fetch products from db
有没有解决方法,例如在构造函数中添加一些代码来验证是否已经建立了现有的数据库连接?
我是一名开发人员,我使用过程风格编写,只是对所有查询使用单个全局$_db object
,这似乎更高效,因为它只创建1个DB连接。
答案 0 :(得分:3)
对于许多较小的应用程序,我将数据库实例全局应用于整个应用程序,以及配置和其他应用程序范围的类,例如日志记录。这不一定是首选方法,因为它将代码耦合到期望以某种方式命名的事物,并且可能导致冲突。但是,对于小型实用程序应用程序来说很方便。
对于任何更大的东西,我通常都会从ORM中使用我的数据库,因此它不会成为问题。
答案 1 :(得分:0)
迈克尔创建静态类以及如何使用它的示例有助于解决问题。