我想使用OOP概念使用PHP构建简单的博客应用程序。所以基本上我有一个Blog类和一个数据库类。在Blog类中,我有一个名为“createANewBlog()”的方法,它接受博客文本和数据库连接。例如:在OOP应用程序中放置查询的正确位置
class Blog{
public $id;
public $text;
public function createANewBlog($inText, $db)
{
$this->text = $inText;
$this->id = $db->create($inText);
return true;
}
}
所以基本上这个函数调用数据库类中的create()函数来获取最后插入的Id。
class DB{
function create($intext){
$sql = "INSERT INTO....... ";
then i will send the last inserted id;
}
}
在索引控制器中,我将简单地创建一个博客对象并调用该方法来创建一个新对象。
现在我的问题是“是正确的方式在OOP以代码”或我前人的精力打电话查询该博客类中createANewBlog()函数,如:
createANewBlog($inText, $db){
$this->text = $inText;
$this->id = $db->execute("INSERT INTO .....");
return true;
}
请帮助我,因为我不知道在哪里放置查询的正确位置(在博客类中或在数据库类中)。
在控制器中组织代码并在方法内部进行查询并将数据返回给视图总是一个好习惯。这也取决于你如何构建你的应用程序。但是查询和其他大代码(数据过滤,语句等)的正确位置总是更好地将它们保存在用于特定视图的控制器的方法内。以MVC框架为例。 –