加入收藏 | 设为首页 | 会员中心 | 我要投稿 武汉站长网 (https://www.027zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php入口文件类,PHP框架DIY[主入口文件及MVC的实现]

发布时间:2022-10-17 04:32:13 所属栏目:PHP教程 来源:转载
导读: 最近正在开发一个PHP的开发框架(ibframework),所以把开发过程中的一些技术细节做一下分享,让你可以轻松编写自己的专属框架(很久没写文章了,为了大V,无奈啊)。
目前框架还正在开发中,参

最近正在开发一个PHP的开发框架(ibframework),所以把开发过程中的一些技术细节做一下分享,让你可以轻松编写自己的专属框架(很久没写文章了,为了大V,无奈啊)。

目前框架还正在开发中,参考原型是(YII/CI/Brophp等开源框架),代码我都会及时同步到github,代码还有很多的不足之处,希望能跟各位PHP爱好者多多交流。托管地址:

今天主要简单阐述一个Framework的主入口文件(index.php)和MVC模式的实现。

一般一个框架的主入口文件是网站根目录的index.php,用户每次都要访问的。这样在index.php中就可以根据用户请求参数实例化不同的控制器类。例如一个简单的网站目录结构。

包含一个主入口文件index.php,基本的MVC结构(models/controllers/views)。

主入口文件中,我们只需要处理一下用户提交的参数,假如用c代表应该实例化的控制器类,a代表应该执行控制器中的action。

这样我们就可以在models目录下编写一个TestModel.php的模型文件,打印一个helloworld,一会会在控制器中实例化这个model类。

接着在views目录下编写一个test.php的视图文件,用于显示一会控制器要分配过来的变量$str

最后在controllers目录下编写一个控制器类TestController.php,实例化model类,并且分配views。

b1157da3fbac975d0e1a3b5f8daaa91d.png

注:本文旨在简单阐述mvc的实现原理php轻框架,所以一切都是基于简单。例如一个完整的框架中会有一个Controller的父类,这样子类集成后就可以调用父类的render方法分配视图了。还有models中的类文件一般会预先加载好或者写到__autoload中,不用再在控制器中包含;为防止不同控制器的视图文件重名,一般会在views目录建一个跟控制器重名的文件夹作区分;框架会有一个单独的文件夹,包含系统的核心类等等。这里都不再赘述,有兴趣的朋友可以学习一下一些开源的框架用法。

(编辑:武汉站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!