最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
CI框架中PHP正则(不用转义)做法
时间:2022-06-25 00:53:39 编辑:袖梨 来源:一聚教程网
我们在书写PHP正则的时候,正则的修饰定义符通常定义为 / ,而定义为 / 的带来的麻烦是如果正则表达式含中有 / 则需要转义书写为 \/ 这让读正则的人看的比较晕乎。书写也比较烦琐。
为了避免这个情况,可以把正则的修饰定义符定义为 # 。
例子:
| 代码如下 | 复制代码 |
| $uri = 'art/33/44'; preg_match_all('#^art(/\d+)(/\d+)#',$uri,$arr); //等价于下面注释的 //preg_match_all('/^art(\/\d+)(\/\d+)/',$uri,$arr); echo ' '; | |
话说CI框架,在路由解析功能上。也是这么干的。CI相关代码如下:
[路由定义文件 application/config/routes.php]
| 代码如下 | 复制代码 |
| $route['default_controller'] = "welcome"; $route['404_override'] = ''; $route['art/(\d+)(/\d*)'] = "test/aaa/$1/"; | |
[路由解析类 system/core/Router.php]
| 代码如下 | 复制代码 |
|
function _parse_routes() // Loop through the route array looking for wild-cards // Does the RegEx match? return $this->_set_request(explode('/', $val)); // If we got this far it means we didn't encounter a | |
这样的话,在CI框架里书写路由规则的时候,如果正则规则里有/,则可以不用转义!
相关文章
- 异人之下手游什么时候公测 异人之下手游公测时间 12-17
- 学科网登录入口官网-初中数学学科网官网|快速登录入口 12-17
- 魔兽世界无畏远征军军需官位置在哪-魔兽世界无畏远征军军需官具体位置详解 12-17
- 塞尔达无双封印战记最终对决怎么过 最终对决全流程图文攻略 12-17
- 异人之下手游在哪预约 异人之下手游官网预约入口 12-17
- 网页版抖音入口在哪-抖音电脑版网页登录官方免费教程 12-17