Lumen:在Blade视图中获取URL参数

126

我正在尝试从一个视图文件中获取URL参数。

我有这个URL:

http://locahost:8000/example?a=10

还有一个名为example.blade.php视图文件。

我可以通过$request->input('a')从控制器获取参数a

是否有一种方法可以从视图中获取这样的参数(而不必将其从控制器传递到视图)?


你可以访问$_GET[]数组,但我不建议这样做。你应该将它从控制器传递到视图中,不确定为什么你不想这样做。 - Tim Lewis
@TimLewis 我会避免从控制器传递它,因为如果我有很多参数,那么这可能会很麻烦,而且直接从视图获取它应该更快。 - Andrea
我猜从控制器定义和传递大量变量到视图可能会很繁琐,但是我宁愿选择繁琐也不要采用不良实践... - Tim Lewis
思考一下为什么在视图中无法直接访问$request,以及为什么直接访问$_GET、$_POST、$_REQUEST是不好的编程实践。 - mvladk
@mvladk 是的,实际上是这样的。框架会从这些变量中删除潜在的不良数据。 - Bhargav Nanekalva
13个回答

4
根据官方文档8.x,我们使用帮助程序request

请求函数返回当前请求实例或从当前请求获取输入字段的值:

$request = request();

$value = request('key', $default);

请求的值是一个数组,您可以通过以下方式使用输入键来简单地检索您的输入。
$id = request()->id; //for http://locahost:8000/example?id=10

3

如果你使用路由并传递参数,请在你的 Blade 文件中使用以下代码:

{{dd(request()->route()->parameters)}}

0

这里是获取带分页的筛选数据的代码

$queryvariable->appends($data)->links('link of new page');

请注意

$data = $request->all();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接