Php 在MVC结构中工作时,DAO是否与模型相同?

Php 在MVC结构中工作时,DAO是否与模型相同?,php,model-view-controller,model,dao,Php,Model View Controller,Model,Dao,在学校的后端课程中,我们逐渐了解了如何使用MVC结构进行PHP开发 我们的基本“模板”由一个index.php(它有到控制器中的页面和函数的路由)、控制器文件夹(包含控制器)、视图文件夹和一个DAO文件夹组成,DAO文件夹包含对数据库的常规访问以及与数据库中每个表相关的文件 在这个结构中,我有控制器和视图,但我想知道为什么我们从不使用模型,我们甚至从来没有被告知过它……DAO应该是我的模型文件夹吗 下面是一个从products表中获取值的DAO代码示例,只是为了明确我所说的DAO是什么意思 pu

在学校的后端课程中,我们逐渐了解了如何使用MVC结构进行PHP开发

我们的基本“模板”由一个index.php(它有到控制器中的页面和函数的路由)、控制器文件夹(包含控制器)、视图文件夹和一个DAO文件夹组成,DAO文件夹包含对数据库的常规访问以及与数据库中每个表相关的文件

在这个结构中,我有控制器和视图,但我想知道为什么我们从不使用模型,我们甚至从来没有被告知过它……DAO应该是我的模型文件夹吗

下面是一个从products表中获取值的DAO代码示例,只是为了明确我所说的DAO是什么意思

public function selectById($id) {
    $sql = "SELECT * FROM `products` WHERE `id` = :id";
    $stmt = $this->pdo->prepare($sql);
    $stmt->bindValue(':id', $id);
    $stmt->execute();
    return $stmt->fetch(PDO::FETCH_ASSOC);
}

不,刀不是模型。DAO是模型的一部分

模型不是一回事。模型基本上是整个应用程序的核心;这是应用程序。模型包含构成应用程序功能的所有内容。它包括数据库、数据库访问层、业务对象、业务逻辑、辅助服务。。。使您的应用程序独一无二的一切


视图是向外界展示这个核心应用程序的东西,它允许人们看到应用程序的功能并与之交互。对于不同的使用场景,可能有几个不同的视图。控制器是协调外部世界、视图和核心模型如何协同工作的剩余粘合剂。

否。模型是一个层。谢谢,如果我使用CakePhp,那么我现在拥有的dao文件应该放在模型文件夹中?是和否。Cake不能正确执行MVC。蛋糕的模型本质上是一把刀,仅此而已。