我正在构建一个简单的框架,希望它能帮助我更好地理解OOP。我遇到了我的第一个障碍。
我很自然地使用了MVC模式,并且我有一个用户模型。然后我有一个“表”来管理用户对象的集合。我有一个抽象的模型和桌子。类似于布局。
无论如何,我现在想知道执行查询的最佳方式是什么?我有一个管理数据库层的数据库对象。当前使用mysqli对象。
问题是我的连接是我的应用程序对象的成员,如何从我的表对象中访问它来执行查询?显然,我不能创建一个新的对象,因为它将再次连接到数据库。我需要重用同一个db对象。
有什么想法吗?我明白如果这不是最佳设计的话。现在我只是在寻求建议。
编辑:,我应该只使用原则吗?
发布于 2011-06-01 23:06:14
说教还是不讲?
如果您的目的是学习如何编写SQL查询并为您自己创建一些东西,请使用mysqli或PDO。
如果您想学习如何使用真正的面向对象的数据库层,请使用原则。使用3页教程,您可以做最一般的事情。然而,一些非常特殊的情况在原始sql中编码比使用理论更好。但是,如果您知道如何使用原则来做事情,那么它是一个非常有用的库,您最终会编写更好的、更一致的、更多的readabler和扩展器(:-)代码。
发布于 2011-06-01 22:43:58
您应该在构造函数中添加这样的依赖项。
您也可以使用静态db对象,但特别是对于像项目这样的框架,如果您尝试添加单元测试或希望重构,这将使您陷入困境。
在命名模式中,您希望为此使用依赖项注入。
https://stackoverflow.com/questions/6208562
复制相似问题