【发布时间】:2012-05-27 09:05:19
【问题描述】:
最近几天,我广泛阅读了有关 PHP 中的 OOP 和 MVC 的书籍和网页,以便我可以成为一个更好的程序员。我对 MVC 的理解遇到了一个小问题:
mysql_query 应该放在哪里?
我应该将它放在控制器中并调用模型上的方法,该方法根据提供的查询返回数据吗?或者我应该把它放在模型本身?我提供的这两个选项都是垃圾吗?
【问题讨论】:
-
"在哪里放置
mysql_query?"你不要:请停止使用古老的mysql_*函数编写新代码。它们不再维护,社区已经开始 deprecation process 。相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果您无法决定,this article 将帮助您选择。如果你想学习,here is a quite good PDO-related tutorial. -
我会在模型中进行查询(
mysqli_*或PDO)。而且不该模型不仅适用于访问数据库。 -
由于我还不是一个优秀的程序员,所以我没有意识到这一点。但是,无论如何,我还是想选择似乎基于 PDO 的 ORM 样式。但是关于 mvc 的问题仍然不清楚:我从哪里请求数据库中的数据?一个用于读取数据库的通用模型或每个表/任何特定操作的模型?在第二种情况下:我将如何保存代码?我会创建一个“助手”吗?
标签: php model-view-controller oop design-patterns