什么是php的路由机制(推荐学习:PHP视频教程)
1、路由机制就是把某一个特定形式的URL结构中提炼出来系统对应的参数。
举个例子,如:
http://main.wopop.com/article/1 其中:/article/1 -> ?_m=article&id=1。<br/>
2、然后将拥有对应参数的URL转换成特定形式的URL结构,是上面的过程的逆向过程。
PHP的URL路由方式
总体来说就是:获取路径信息->处理路径信息
URL路由方式:
第一种是通过url参数进行映射的方式,一般是两个参数,分别代表控制器类和方法比如index.php?c=index&m=index映射到的是index控制器的index方法。
第二种,是通过url-rewrite的方式,这样的好处是可以实现对非php结尾的其他后缀进行映射,当然通过rewrite也可以实现第一种方式,不过纯使用rewrite的也比较常见,一般需要配置apache或者nginx的rewrite规则
<IfModule mod_rewrite.c> <br/> RewriteEngine On <br/> RewriteBase / <br/> RewriteRule ^index\.php$ - [L] <br/> RewriteCond %{REQUEST_FILENAME} !-f <br/> RewriteCond %{REQUEST_FILENAME} !-d <br/> RewriteRule . /index.php [L] <br/></IfModule><br/>
第三种,就是通过pathinfo的方式,所谓的pathinfo,就是形如这样的url。xxx.com/index.php/c/index/aa/cc,apache在处理这个url的时候会把index.php后面的部分输入到环境变量$_SERVER['PATH_INFO'],它等于/c/index/aa/cc。
然后我们的路由器再通过解析这个串进行分析就可以了,后面的部分放入到参数什么地方的,就依据各个框架不同而不同了。
以上是php路由原理的详细内容。更多信息请关注PHP中文网其他相关文章!