变量规则

最后更新于:2022-04-01 21:18:50

## 变量规则 ThinkPHP5.0支持在规则路由中为变量用正则的方式指定变量规则,弥补了动态变量无法限制具体的类型问题,并且支持全局规则设置。使用方式如下: ### 全局变量规则 设置全局变量规则,全部路由有效: ~~~ // 设置name变量规则(采用正则定义) Route::pattern('name','\w+'); // 支持批量添加 Route::pattern([ 'name' => '\w+', 'id' => '\d+', ]); ~~~ ### 局部变量规则 局部变量规则,仅在当前路由有效: ~~~ // 定义GET请求路由规则 并设置name变量规则 Route::get('new/:name','News/read',[],['name'=>'\w+']); ~~~ 如果一个变量同时定义了全局规则和局部规则,局部规则会覆盖全局变量的定义。 ### 完整URL规则 如果要对整个URL进行规则检查,可以进行`__url__` 变量规则,例如: ~~~ // 定义GET请求路由规则 并设置完整URL变量规则 Route::get('new/:id','News/read',[],['__url__'=>'new\/\w+$']); ~~~
';