PHP MVC结构放置自己的类

前端之家收集整理的这篇文章主要介绍了PHP MVC结构放置自己的类前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚开始看一下MVC模式.
我的问题是:

我将把我的其他类文件(数据库,用户,记录器,邮件程序等)放在哪里?我应该为它们创建一个新目录,例如库?

我应该在模型函数中实例化Controller中的类吗?

<?PHP

class Controller {
    protected function model($model) {
        require_once('../app/models/'. $model .'.PHP');

        return new $model();
    }

    protected function view($view,$data = []) {
        require_once '../app/views/'. $view .'.PHP';
    }
}

Where would I put my other class files (Database,User,Logger,Mailer,etc)? Should I create a new directory for them,e.g. libs?

将它们放在单独的文件中,因为它们都提供不同的功能应该没问题.您的目录命名没有区别 – 只要它符合您的项目或一般的命名约定(可能,甚至更好).

Should I instantiate the classes in the Controller inside the model function?

不,据我所知,流程可能类似于:

>索引文件接收请求并启动新的引导实例> bootstrap设置throwable处理程序和路由器>然后路由器根据请求方法调用相应的方法,并通过匹配一组路由提供uri>匹配路由初始化MVC三元组的所有组件和可调用方法.组件(模型层,视图层和控制器层)将传递给路由器调用方法.在我的例子中,我调用类FrontController,方法init.>基本上,init是实际制作MVC三元组的地方.模型层负责业务逻辑,持久性等.重要的是要注意Model不是单个文件或类(对于View和Controller来说是相同的). View层和Controller层都参考Model层来执行相应的操作.视图层的任务是管理输出,例如,决定输出将具有应用程序的内容类型/ json或text / plain,或者要呈现的模板.此外,视图不是模板,用于显示数据.请注意,视图直接从Model层询问必要的数据;没有任何与Controller层的交互.最后,当需要交互时,Controller层会进入,用户提交表单,相应的Controller过滤输入并从Model层调用方法.

原文链接:https://www.f2er.com/php/445218.html

猜你在找的PHP相关文章