如何使用GET查询参数在Laravel中创建路径。
例如考虑:
Route::get('test?a={a}&b={b}', function ($a, $b) {
dump($a);
dump($b);
dd("DONE!");
})->name('foo');
现在,如果我导航到:/test?a=5&b=10
,那么我会收到404错误!
但是,我可以为它创建网址。 e.g。
route('foo', [5, 10,]); // return "http://homestead.app/test?a=5&b=10"
我遇到的另一个问题是生成网址不会url_encode
查询参数。
例如:
route('foo', [5, '&c=10',]); // return "http://homestead.app/test?a=5&b=&c=10"
我希望它返回:
"http://homestead.app/test?a=5&b=%26c%3D10"
因此我的问题是如何在Laravel中创建一个涉及GET查询参数的路由。
答案 0 :(得分:1)
将路线更改为:
Route::get('test', function () { ... });
然后将参数添加为关联数组:
route('foo', [
'a' => '5',
'b' => '&c=10'
]);
使用以下命令获取控制器中的参数:
$a = request('a');
$b = request('b');