【发布时间】:2016-03-16 19:49:59
【问题描述】:
我正在尝试处理 Laravel 中的路由。我该怎么做?
如果用户在这里拨打号码(3 到 11):
- /{数字}
- /地区/{数字}
- 或 /phone/{numbers}
数字之间可能包含一个破折号,以及开头的“1”(此拨号代码)。
需要去掉破折号 那么如果是11个数字,需要去掉开头的'1'。
我们根据拨打的位数重定向它
- 重定向/区域/中的3到6位数字,其中$ s1 =前3位 数字
- 6到10重定向到/phone/,$s1=前3位,$s2=后面3位
- 10 在 /phone/ 中重定向,$s1=前 3 位,$s2= 3 以下数字,$s3 = 以下 4 个数字
我的路线(不包括破折号):
Route :: get ( 'area/{phone}', 'Controller@phone') -> where ([ 'phone' => '[0-9]{3,11}']);
Route :: get ( 'phone/{phone}', 'Controller@phone') -> where ([ 'phone' => '[0-9]{3,11}']);
控制器执行破折号删除,裁剪不需要的数字,如果 11 位数字裁剪“1”,然后重定向到 /phone/、/area/。
但是重定向之后,routes.php 又开始了,循环变得无限了。
我能做什么?也许还有其他方法?
【问题讨论】:
标签: php laravel laravel-5 laravel-routing