在Laravel 5.7中获取当前URI

时间:2019-03-06 06:14:09

标签: laravel laravel-5.7

我知道在以前的Laravel版本(例如4)中,可以通过

获取当前的uri
Route::current()->uri();

但是,这似乎在Laravel 5.7或更高版本中不起作用。我想知道应该如何重写它。 请注意,我在刀片视图中访问uri,因此不能使用非静态方法。

3 个答案:

答案 0 :(得分:2)

您可以使用以下方法在laravel中获取当前网址。

// Get the current URL without the query string...
echo url()->current();

// Get the current URL including the query string...
echo url()->full();

// Get the full URL for the previous request...
echo url()->previous();

还可以通过URL外观访问以下每种方法:

use Illuminate\Support\Facades\URL;

echo URL::current();

有关更多信息,您可以阅读完整的文档here

答案 1 :(得分:1)

这应该仍然有效-但如果未命名当前路径,则可能无法正常工作。您可能应该从请求中获取路径。

Request::path();

由于您可以调用许多相关方法,因此可能还会检查请求实例的API。

Request::root();
Request::url();
Request::fullUrl();
Request::fullUrlWithQuery();

答案 2 :(得分:0)

public function yourMethod(Request $request)
{
    return view('your-view', [ 'current-uri' => $request->route()->uri() ]);
}

Documentation