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

我想定义一个带有参数的路由,该参数将包含一个斜线/字符,例如参数example.com/view/abc/02在哪里abc/02

如何防止Laravel读取斜线作为下一个route参数的分隔符?因此,我现在有了404 not found error

回答:

将下面的全部路线添加到您的底部,routes.php并记住composer dump-autoload之后再运行。注意,使用“->

where”来指定参数的可能内容,从而使您能够使用包含斜杠的参数。

//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 ]

以上是 如何使用包含斜杠字符的参数定义Laravel路线 的全部内容, 来源链接: utcz.com/qa/419733.html

回到顶部