PHP路由
来源:互联网 发布:银客网网络理财 编辑:程序博客网 时间:2024/05/19 23:57
打造php路由器
1.url重写
apache服务器:
目录下放置.htaccess文件,内容类似下面这样:
<ifmodulemod_rewrite.c>RewriteEngineOnRewriteRule^(.*)$ index.php?$1 [L]</ifmodule>
RewriteRule的语法:RewriteRule正则表达式 替换后的内容(这里用$1$2来获得正则匹配的内容)[L]的意义为,匹配改写后不再向下继续匹配(可以写多个Rule)
2.几个变量
为了获得请求的字符串/*例如localhost/router/id/3中router为路由目录,id/3为请求串*/,先来看看下面几个变量的值://index.php在/opt/lampp/htdocs/router/
<?phpecho$_SERVER['REQUEST_URI'],$_SERVER['DOCUMENT_ROOT'],__FILE__;?>
得到结果:
/router/id/3/opt/lampp/htdocs /opt/lampp/htdocs/router/index.php//地址为localhost/router/id/3
那么我们需要的/id/3需要去掉的就是$_SERVER['REQUEST_URI']里面的/router
3.字符串处理
<?php//echo$_SERVER['REQUEST_URI'],$_SERVER['DOCUMENT_ROOT'],__FILE__;preg_match('/(.*)\/.*\.php$/',__FILE__,$dir);$remove=str_replace($_SERVER['DOCUMENT_ROOT'],'',$dir[1]);$query=str_replace($remove,'',$_SERVER['REQUEST_URI']);print_r($query);?>
这样我们就得到了结果:
/id/3
4.参数分割
使用explode函数分割出各参数,这样你就可以继续解析到页面或者View了
<?php//echo$_SERVER['REQUEST_URI'],$_SERVER['DOCUMENT_ROOT'],__FILE__;preg_match('/(.*)\/.*\.php$/',__FILE__,$dir);$remove=str_replace($_SERVER['DOCUMENT_ROOT'],'',$dir[1]);$query=str_replace($remove,'',$_SERVER['REQUEST_URI']);print_r(explode("/",$query));?>
0 0
- PHP路由
- php路由
- php 路由解析规则
- PHP的路由浅析
- php 路由解析规则
- php的路由规则
- PHP 路由配置
- PHP的路由浅析
- PHP-thinkPHP 路由
- php路由实现原理
- PHP ZendFramework URL路由自定义
- codeiginter -- 路由配置 routes.php
- MVC in php -- 路由(Router)
- 原生php 实现路由功能
- Apache配置路由之PHP
- PHP路由模式Path_Info模式
- php url路由入门实例
- 微擎路由、site.php
- Java异常体系及注意事项
- 在Windows上安装Python
- 888
- 安装VC6.0
- Oracle 用户权限
- PHP路由
- 图文对齐布局
- 使用String的split遇到的问题
- 序列和字典遍历
- 为新天龙八部而生 畅游自研CycloneⅣ引擎全解析
- 【noi2010】【超级钢琴】【堆】【RMQ】
- 谓词predicate(验证email,手机号)
- struts.xml 示例配置
- linux shell脚本攻略 学习笔记3 -- 第三章 以文件之名