- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编写PHP的Framework编写PHP的Framework.doc
编写PHP的Framework 框架这个概念可能一开始就吓坏了很多PHP的Coder,其实你只要把一个Framework想明白了,其实也没啥,只是别人功能更复杂,细节考虑的更多,代码质量更高。 框架最重要的一个文件为入口文件,基本上相当于一个总控开关,所有的请求都需要经过这个文件: 1 ?php 2 define(APP_PATH,dirname(__FILE__)./..); //应用路径 3 include APP_PATH./Library/Toper/Core/FrontController.class.php;//导入前端控制器 4 $frontController = Tp_FrontController::getInstance(); 5 $frontController-run(); 这个文件可以只做一件事情,那就是将控制权交给框架。 大家都知道,一个MVC的应用,所有的请求都必须经过控制器,所以下面我们来编写一个比较简单的控制器: 1 ?php 2 class Test_IndexController extends Tp_Controller { 3 public function indexAction() { 4 echo a; 5 } 6 } 这个类只需要继承自Tp_Controller即可,Tp_Controller是Toper的控制器的基类,只要你继承它,你就可以使用框架帮你写好的一系列方法,这样就可以大大减少你自己的工作量了,并且按照规范,函数名也是有意义的,如刚才写的这个函数代表的意义就是访问Test模块IndexContrller这个控制器下面的index这个Action。 那么如何使用模型呢?实际上非常简单。 1 ?php 2 class Test_IndexModel extends Tp_Model { 3 public function test() { 4 return test; 5 } 6 } 原理和控制器一样,也是继承框架的类,然后自定义方法,这个地方的方法名没有限制,可以随意。 那么编写模型之后怎么在控制器中调用呢,其实方法就是在控制器中实例化这个模型类,然后调用相应的方法即可,所以修改刚才这个控制器的类: 1 ?php 2 class Test_IndexController extends Tp_Controller { 3 public function indexAction() { 4 $model = new Test_IndexModel(); 5 echo $model-test(); 6 } 7 } 为什么没有include语句? 那是因为框架帮你做完了这一切,当然,框架不是万能的,当你比较熟悉之后,也可以选择不使用自动导入。 刚才我们所做的一切都没有View,那么怎么编写View呢,实际上就是一个HTML文件,框架在View这一层一般是实现标签库,标签库帮你完成一些原来需要用PHP代码才能完成的事情,比如循环遍历,没有标签库可能你就只能在这个View的文件中使用?php foreach(.....) ?,这样对于代码分离很不好。 如果你对标签库没有概念,那么你直接看下面的代码吧! 1 html 2 head 3 titletest/title 4 /head 5 body 6 print name = Hello world! type = str / 7 /body 8 /html 这是一段没有什么难度的代码,唯一的难度可能就是这个print标签,这个标签是框架定义的,它的功能很简单,就是打印一个字符串,你可能觉得这样没什么意义,因为我使用PHP代码也可以很轻易的完成这个功能,但是你想像一下一个做前端的为什么还需要懂PHP呢,如果使用标签库,那么前端开发人员就可以像使用HTML标签一样操作数据了。 我们知道所有的请求都必须要通过控制器,所以外部是无法直接访问这个视图文件的,所以又需要修改控制器的代码了!!! 1 ?php 2 class Test_IndexController extends Tp_Controller { 3 public function indexAction() { 4 $model = new Test_IndexM
您可能关注的文档
- 绩效考核评估表绩效考核评估表.doc
- 绩效考核详细的考核指标与计算方法绩效考核详细的考核指标与计算方法.doc
- 绩效量化考核落地实施暨方案设计实战训练营2天1夜绩效量化考核落地实施暨方案设计实战训练营2天1夜.doc
- 绪论试题及答案绪论试题及答案.doc
- 绳锯混凝土拆除专项施工方案绳锯混凝土拆除专项施工方案.doc
- 维修工考试题库维修工考试题库.doc
- 维修电工竞赛试题库之多选题2维修电工竞赛试题库之多选题2.doc
- 维修电工试题库051112维修电工试题库051112.doc
- 维修电工资格考试试卷及答案维修电工资格考试试卷及答案.doc
- 维修电工题库(含答案)维修电工题库(含答案).doc
- 编写一个以c语言或汇编为基础的DSP程序编写一个以c语言或汇编为基础的DSP程序.doc
- 编制内控文件权限指引、控制文档实例模板编制内控文件权限指引、控制文档实例模板.doc
- 编制的投标书步骤编制的投标书步骤.doc
- 编发单位教务处 二00九年十一月五日编发单位教务处 二00九年十一月五日.doc
- 编导艺考名词解释编导艺考名词解释.doc
- 编码及注释规范(JavaScript)编码及注释规范(JavaScript).doc
- 编程常用英文单词编程常用英文单词.doc
- 编程必备的英语单词编程必备的英语单词.doc
- 编程问题及解决方法编程问题及解决方法.doc
- 编译原理 第三章 文法和语言编译原理 第三章 文法和语言.doc
最近下载
- 粤人社发【2012】70号关于事业单位岗位设置和聘用后工资及退休等问题处理办法的通知.pdf VIP
- 小学六年级数学上期中考试题共10套.doc VIP
- 婴幼儿健康评估与指导全套课件.pptx VIP
- 2025年法考刑诉考前佛脚.pdf VIP
- 各国汽车钢材对应表(各国汇总).xls VIP
- 两轮电动车行业深度报告:存量精耕,智能化与出海驱动新成长.pptx VIP
- 开学第一课之开学季防范电信网络诈骗完整课件.pptx VIP
- Unit 1 Laugh out loud! Developing ideas+课件-2024-2025学年高中英语外研版(2019)选择性必修第一册.pptx VIP
- 《民航地面服务与管理》项目一.ppt VIP
- 婴幼儿健康评估与指导 课程标准.docx VIP
文档评论(0)