php – 如何使用包含斜杠字符的参数定义Laravel路线

我想定义一个路径,其参数将包含一个斜杠/字符,如example.com/view/abc/02,其中abc / 02是参数。

如何防止Laravel读取斜杠作为下一个路由参数的分隔符?因为我现在得到404未找到错误。

将下面的所有路由添加到你的routes.php的底部,记住以后运行composer dump-autoload。注意使用“ – > where”来指定params的可能内容,使您能够使用包含斜杠的参数。

//routes.php
Route::get('view/{slashData?}', 'ExampleController@getData')
    ->where('slashData', '(.*)');

而在你的控制器,你只是像你通常做的那样处理数据(就像它不包含斜线)。

//controller 
class ExampleController extends BaseController {

    public function getData($slashData = null)
    {
        if($slashData) 
        {
            //do stuff 
        }
    }

}

这应该为你工作。

此外,这里你有详细的路线参数的Laravel文档:[docs]

http://stackoverflow.com/questions/21552604/how-to-define-a-laravel-route-with-a-parameter-that-contains-a-slash-character

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:php – 如何使用包含斜杠字符的参数定义Laravel路线