如何在laravel blade中添加带有完整url的额外参数?

如何在laravel blade中添加带有完整url的额外参数?,laravel,laravel-blade,Laravel,Laravel Blade,我有一个带有查询字符串的url。我知道我可以通过url()->full()获得完整字符串。但是我想添加额外的查询字符串。在那里,我面临着一个问题 到目前为止,我已经尝试过,href={{url()->full()。“&rating=5”}如果url中已经有一些查询数据,那么这就可以了。但如果没有,则显示错误 示例:如果我的url是Example.com/147?place=33,那么它可以工作,但是如果我的url是Example.com/147,那么它就不能工作 我还尝试了,href={{url

我有一个带有查询字符串的url。我知道我可以通过
url()->full()
获得完整字符串。但是我想添加额外的查询字符串。在那里,我面临着一个问题

到目前为止,我已经尝试过,
href={{url()->full()。“&rating=5”}
如果url中已经有一些查询数据,那么这就可以了。但如果没有,则显示错误

示例:如果我的url是
Example.com/147?place=33,那么它可以工作,但是如果我的url是
Example.com/147,那么它就不能工作

我还尝试了,
href={{url()->full()。“?rating=5”}
。这只适用于相反的场景


无论当前查询是否存在,我如何在完整url后追加我自己的查询字符串?

您可以执行以下操作:

href={{ url()->current().'?'.http_build_query(array_merge(request()->all(),['rating' => 5])) }}

这只是在当前请求输入中添加额外的参数,然后重建查询字符串。

正如@joão-henrique-silveira所建议的那样,我添加my作为一个更好的可见性的答案

{{ request()->fullUrlWithQuery(['foo' => 'bar']) }} 

如果查询中已存在“评级”,则该选项不起作用。例如,如果我的url是'example.com/147?rating=5',那么它对'example.com/147?rating=3'不起作用@NabilFarhan将其更改为
array\u merge
,以便第二个数组项总是覆盖第一个数组项。更易于阅读的是:{{request()->fullUrlWithQuery(['foo'=>'bar'])}@superfly将您的评论添加为对将来寻找它的人的回答。它更好更容易