流明:在“刀片”视图中获取URL参数


81

我正在尝试从视图文件获取url参数。

我有这个网址:

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

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

从控制器我可以得到的参数a$request->input('a')

有没有办法从视图中获取此类参数(而不必将其从控制器传递给视图)?


您可以访问该$_GET[]数组,但我不建议您这样做。您应该将其从控制器传递给视图,不确定为什么不希望这样做。
蒂姆·刘易斯

@TimLewis我会避免从控制器传递它,因为如果我有很多参数,可能会很烦人,并且应该有一种直接从视图中获取它的方法,这样应该更快。
安德里亚(Andrea)

我想定义很多变量并将其从控制器传递到视图可能很繁琐,但是我每天都会对繁琐的做法感到乏味……
蒂姆·刘易斯

考虑一下为什么您不能直接访问$ request的原因,以及为什么直接访问$ _GET,$ _ POST,$ _ REQUEST的错误做法
mvladk 2015年

@mvladk是的,实际上。框架从这些变量中删除了潜在的不良数据。
Bhargav Nanekalva '16

Answers:


107

这很好用:

{{ app('request')->input('a') }}

aurl参数在哪里。

在此处查看更多信息:http : //blog.netgloo.com/2015/07/17/lumen-getting-current-url-parameter-within-a-blade-view/


这将返回所有参数app('request')->request->all()
dav

如果我的URL像locahost:8000 / example / 10 并且我想获取值10,该怎么办?@Andrea
Sajeeb Ahamed 17'Apr

@SajeebAhamed最好您将其作为一个新问题提出:stackoverflow.com/questions/ask
Andrea

57

我用过的最短方法

{{ Request::get('a') }}


21

输入您的网址:

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

我发现获取'a'的值并将其显示在页面上的最佳方法是使用以下命令:

{{ request()->get('a') }}

但是,如果要在if语句中使用它,则可以使用:

@if( request()->get('a') )
    <script>console.log('hello')</script>
@endif

希望能对某人有所帮助!:)




7

您可以Input通过以下方式通过别名公开公开外观config/app.php

'aliases' => [
    ...

    'Input' => Illuminate\Support\Facades\Input::class,
]

$_GET直接在Blade视图/模板内部使用Facade访问url参数值:

{{ Input::get('a') }}

流明有/ config文件夹?
Mahefa



1

如果使用route和pass参数,请在刀片文件中使用此代码

{{dd(request()->route()->parameters)}}
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.