PHPMVC框架路由学习笔记_第1页
PHPMVC框架路由学习笔记_第2页
PHPMVC框架路由学习笔记_第3页
PHPMVC框架路由学习笔记_第4页
PHPMVC框架路由学习笔记_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PHPMVC匡架路由学习笔记文章主要介绍了PHPMVC架路由学习笔记的相关资料,需要的朋友可以参考下。提到PH叩发web,自然离不开开发框架,开发框架为我们提供了灵活的开发方式,MVCg分离,业务解耦等。第一篇先来简单点的,说说MVCIg架的路由功能。一般的单入口框架路由都是这样的结构:domain/index.php/classname/functionname/var1/var2这里的index.php就被称为入口文件。对于服务器而言,你这里访问的就只有index.php后面调用的controller和里面的方法,甚至传值都是在框架内部基于PHP1面实现的。Talkischeap,show

2、youthecode!首先,先建立好下面的文件结构我们来动手试试,怎么才能访问到controllers里面的文件。在index.php里面输入以下内容print_r($_SERVER);然后访问以下地址试试。yourdomain/index.php/class/function/var1这里作者我是用本地环境的,我访问的地址是localhost/MVC/index.php/class/function/var1我贴出最重要的2个变量REQUEST_URI=>/MVC/index.php/class/function/var1SCRIPT_NAME=>/MVC/index.php其实

3、路由最基本的原理就在这里:通过这2个变量来提取url地址里的class和function,参数等,然后把classinclude进来,通过PHP勺回调函数call_user_func_array调用对应的function和传递相应的参数。接下来上代码,读代码应该比我写的易懂。哈哈index.php的内容如下1234567891011121314IO9006OClCN00Clco3738394041<?php# 定义application路径define(APPPATH',trim(_DIR_,'/');# 获得请求地址$root=$_SERVER'SCRI

4、PT_NAME'$request=$_SERVER'REQUEST_URI'$URI=array();# 获得index.php后面的地址$url=trim(str_replace($root,”,$request),/');# 如果为空,则是访问根地址if(empty($url)# 默认控制器和默认方法$class=index'$func=wele'else$URI=explode(/',$url);# 如果function为空则默认访问indexif(count($URI)<2)$class=$URI0;$func=index&

5、#39;else$class=$URI0;$func=$URI1;# 把class加载进来include(APPPATH./'.application/controllers/'.$class.php');# 实例化$obj=newucfirst($class);call_user_func_array(# 调用内部functionarray($obj,$func),#传递参数array_slice($URI,2);里面添加下面2 个文件在application/controllersindex.php?12345678910111213141516用于作为默认控制器17181920212223<?phpclassIndexfunctionwele()echoIamdefaultcontroller'?>hello.php<?phpclassHellopublicfunctionindex()echohelloworld'publicfunctionname($name)echohello.$name;?>测试一下看看,能不能访问了。根据上面的路由结构。我们来试试这个访问正常,正确调用了hello这个class内部的name方法,然后把参数barbery传递过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论