【问题标题】:Routing in Laravel with redirects在 Laravel 中使用重定向路由
【发布时间】: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


    【解决方案1】:

    您想使用standard routes with parameters,然后输入validate。如果输入不正确,您将重定向到 404 错误页面。

    【讨论】:

      猜你喜欢
      • 2022-01-26
      • 2017-04-12
      • 2019-11-20
      • 2015-11-23
      • 2021-07-22
      • 2021-07-19
      • 2020-03-24
      • 2018-07-07
      • 2017-06-19
      相关资源
      最近更新 更多