在继续我的项目之前,我想澄清一些事情,以防止错误的代码实践。我以前在 ruby on rail 开发过,我想知道它是否可以像在 PHP 中一样,因为我开始学习但我不想使用 Zend、Yii 等框架
对我来说,模型是将数据插入数据库的地方。
控制器是查找所有参数并使用模型中的函数将数据处理到数据库中的地方。此外,它还可以在程序返回成功或失败时进行路由或重定向。
视图是获取在控制器中初始化的即时变量并使用它以正确格式呈现数据的地方。
所以,这是我在 PHP 中的问题。我想在 php 中创建 CRUD。我浏览了许多文章或帖子(在 stackoverflow 和其他中),但我对有些人说不同类型的事情感到困惑。
在我看来,模型是只与数据插入/查询数据库有关的地方。所以,我的创建、显示、更新、删除的每个查询,我都会放入我的模型中。这是我的模型中 create_user 函数的示例。
function create_user($firstName, $lastName,$username, $password){
$query = "INSERT INTO `users` (`user_id`, `first_name`, `last_name`, `email`, `username`, `password`, `created_at`, `handphone_no`, `street_address`, `city`, `state`, `country`, `postal`, `birthday`, `company_id`)
VALUES (NULL, ?, ?, NULL, ?, ?, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2)";
if($stmt = $this->conn->prepare($query)) {
$stmt->bind_param('ssss', $firstName, $lastName,$username, $password);
$stmt->execute();
}
}
所以,我的第一个问题:在我的模型中,我是否假设一个对象并传递给控制器?或者只返回 true 或 false 以指示该过程的成功或失败。
在我的用户控制器中,
class Users_controller {
private $user;
function __construct(){
$this->user = New User();
}
function create($firstName, $lastName,$username, $password){
$this->user->create_user($firstName, $lastName,$username, $password);
}
}
我的第二个问题:对于我的 CRUD,在 rails 中,它会找到对象的 id 并显示/编辑它或创建/销毁一个新模型。所以,我的控制器必须返回一个对象让我在视图中呈现数据?以及我想如何将我的表单连接到控制器。从我的表单将参数传递给控制器。
所以,现在我只考虑到目前为止,任何指导和清晰的例子让我了解更多,因为我是 php 新手。谢谢...