Lumen : 블레이드보기에서 URL 매개 변수 가져 오기


84

보기 파일에서 URL 매개 변수를 가져 오려고합니다.

이 URL이 있습니다.

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

및라는 보기 파일이 example.blade.php있습니다.

컨트롤러에서 나는 매개 변수 a$request->input('a').

컨트롤러에서 뷰로 전달할 필요없이 뷰에서 이러한 매개 변수를 가져올 수있는 방법이 있습니까?


$_GET[]어레이에 액세스 할 수는 있지만 그렇게하지 않는 것이 좋습니다. 컨트롤러에서 뷰로 전달해야하며 원하지 않는 이유가 확실하지 않습니다.
Tim Lewis

@TimLewis 매개 변수가 많으면 성 가실 수 있고 뷰에서 직접 가져올 수있는 방법이 더 빠르기 때문에 컨트롤러에서 전달하는 것을 피할 것입니다.
Andrea

나는 정의하고보기로 컨트롤러에서 많은 변수를 통과 할 지루한 될 수 있습니다 생각,하지만 난 ... 어떤 일 나쁜 관행을 통해 지루함을 것이다
팀 루이스

왜 직접보기에 당신이 할 수없는 액세스 $ 요청 이유에 대해 생각 _GET $에 접근하는 이유, $ _ POST, $ _ REQUEST 직접 나쁜 관행입니다
mvladk

@mvladk 사실, 사실. 프레임 워크는 이러한 변수에서 잠재적으로 잘못된 데이터를 제거합니다.
Bhargav Nanekalva

답변:


110

이것은 잘 작동합니다.

{{ 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이 같은 경우 어떻게 방법이있을 것입니다 8000 / 예 / 10 : locahost 내가 값 10 @Andrea을 얻을 싶어
Sajeeb Ahamed

@SajeebAhamed 더 나은 당신은 새로운 질문으로이 질문 stackoverflow.com/questions/ask
안드레아


25

주어진 URL :

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

'a'의 값을 가져 와서 페이지에 표시하는 가장 좋은 방법은 다음을 사용하는 것입니다.

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

그러나 if 문 내에서 사용하려면 다음을 사용할 수 있습니다.

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

누군가에게 도움이되기를 바랍니다! :)



9

이것은 나를 위해 잘 작동합니다.

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

예 : 블레이드보기에서 페이지 매김 매개 변수를 얻으려면 :

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


7

Input있는 별칭을 통해 퍼 사드를 공개적으로 노출 할 수 있습니다 config/app.php.

'aliases' => [
    ...

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

$_GET블레이드 뷰 / 템플릿 내에서 직접 파사드를 사용하여 URL 매개 변수 값에 액세스합니다 .

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

Lumen에 / config 폴더가 있습니까?
Mahefa

7

공식 5.8 문서에 따라 :

request () 함수는 현재 요청 인스턴스를 반환하거나 입력 항목을 가져옵니다.

$request = request();

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

문서



1

경로 및 전달 매개 변수를 사용하는 경우 블레이드 파일에서이 코드를 사용하십시오.

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

0

당으로 공식 문서 8.x의

우리는 도우미를 사용합니다 request

요청 함수는 현재 요청 인스턴스를 반환하거나 현재 요청에서 입력 필드의 값을 가져옵니다.

$request = request();

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

request의 값은 다음과 같이 입력 키를 사용하여 입력을 검색 할 수있는 배열입니다.

$id = request()->id; //for http://locahost:8000/example?id=10
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.