我正在寻找以下方面的一些反馈:
我目前有两个类,正在我的PHP应用程序中使用。
数据库连接类,当前正在使用MySQL
(但切换到PDO
)。
另一个需要数据库功能的类(具有多个函数)。
我正在寻找设计这个的最好方法,我已经读过单身人士(评论非常复杂),阅读对象简单地为每个方法(类函数)声明为new
的示例,以及将连接作为每个类的__constructor
方法的一部分分配给私有变量的示例(然后使用$this->
引用)。
那么,其他人怎么做呢?我希望你能够做出一个榜样,并欢迎其他人读到的意见。
我在两个单独的文件中有两个单独的类。我希望保持干净的代码,减少数据库上不必要的开销,并避免任何可能被认为过时的事情(例如全局变量)。
答案 0 :(得分:2)
负责连接的Database
类应该是连接到数据库的那个,创建新的PDO实例,并将其保存到字段本身。
class Database {
private $pdo;
public __construct() {
$this->pdo = new PDO(...);
}
}
第二个类不关心数据库连接的来源,它只需要它可以工作应注入Database
类 :
class WorkerClass {
private $db;
public __construct(Database $db) {
$this->db = $db;
}
}
答案 1 :(得分:1)
我一直在__constructor
创建它,然后使用$this->
来获取它。这应该适合您的需求,但我鼓励您玩不同的风格,看看哪种方式效果最好。
我不会每次都使用new
创建一个新对象,除非你有充分的理由。