在Laravel 5.7中获取当前URI

在Laravel 5.7中获取当前URI,laravel,laravel-5.7,Laravel,Laravel 5.7,我知道在以前版本的Laravel(例如4)中,可以通过 Route::current()->uri(); 但是,这在Laravel5.7或更高版本中似乎不起作用。我想知道该如何改写。 请注意,我正在刀片视图中访问uri,因此无法使用非静态方法。这应该仍然有效-但如果当前路径未命名,它可能无法按预期工作。您可能应该从请求中获取路径 Request::path(); 它可能也在检查请求实例的API,因为有许多相关的方法可以调用它 Request::root(); 请求::url(); Reque

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

Route::current()->uri();
但是,这在Laravel5.7或更高版本中似乎不起作用。我想知道该如何改写。
请注意,我正在刀片视图中访问uri,因此无法使用非静态方法。

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

Request::path();
它可能也在检查请求实例的API,因为有许多相关的方法可以调用它

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

您可以使用folling方法在laravel中获取当前url

// 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 facade访问:

use Illuminate\Support\Facades\URL;

echo URL::current();

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

是的,但我不能调用
url()->current()->uri()
。uri是一个更通用的术语,它涵盖了url(包括其他内容)。在网页的上下文中,URI和URL之间没有区别
use Illuminate\Support\Facades\URL;

echo URL::current();