如何在laravel中使用blade中的$_GET变量?

How to use $_GET variable in blade in laravel?

我的框架是Laravel 5.2,如何在blade中使用{faq}

路线是:

Route::get('help/{faq?}', ['as' => 'help', 'uses' => 'Site\Help\IndexController@index']);

URL 是:

http://localhost:8000/help/general

我在 url 中得到了 {faq}

在php中,如果这个url:http://localhost:8000/help?faq=general使用$_GET['faq']但在laravel中的balde中不起作用$_GET

请指导我。

在 blade

中使用 request()->route('faq'){{request()->route('faq')}}
Route::get('help/{faq?}', ['as' => 'help', 'uses' => 'Site\Help\IndexController@index']);

表示 $faqSite\Help\IndexController@index

可接受的参数

所以当我们看那个

<?php

namespace App\Http\Controllers\Site\Help;

use Illuminate\Http\Request;

class IndexController {
    public function index(Request $request, $faq) {
        return view('site.help.index', compact('faq'));
    }
}

如果 Faq 没有作为参数传递,那么您可以从请求对象中获取它。

class IndexController {
    public function index(Request $request) {
        $faq = $request->has('faq') ? $request->get('faq') : null;
        return view('site.help.index', compact('faq'));
    }
}

现在在视图中 site.help.index 您可以使用 $faq.

或者,您可以使用 - 正如@sam 所指出的那样,request->route('faq') 在您的视图中。但是,请确保先检查它是否存在:

{{ request()->has('faq') ? request()->get('faq') : '' }}

由于 faq 一个 optional parameter,您应该在 index() 操作中执行此操作:

public function index($faq = null)

然后你可以使用 $faq 变量并检查参数是否存在 is_null($faq)

在Laravelblade中使用{{request()->get('faq')}}