Получение текущего URI в Laravel 5.7 - PullRequest
0 голосов
/ 06 марта 2019

Мне известно, что в предыдущих версиях Laravel (например, 4) можно было получить текущий uri через

Route::current()->uri();

Однако, похоже, это не работает в Laravel 5.7 или более поздней версии.Мне интересно, как это должно быть переписано.Обратите внимание, что я обращаюсь к URI в виде блейда и, следовательно, не могу использовать нестатические методы.

Ответы [ 3 ]

2 голосов
/ 06 марта 2019

Вы можете получить текущий URL в 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();

Для получения дополнительной информации вы можетечитать полную документацию здесь .

1 голос
/ 06 марта 2019

Это все равно должно работать - но оно может работать не так, как ожидается, если текущий путь не назван.Возможно, вам следует вместо этого получить путь из запроса.

Request::path();

Вероятно, он также проверяет API экземпляра запроса, так как есть несколько связанных методов, которые можно вызвать по нему.

Request::root();
Request::url();
Request::fullUrl();
Request::fullUrlWithQuery();
0 голосов
/ 06 марта 2019
public function yourMethod(Request $request)
{
    return view('your-view', [ 'current-uri' => $request->route()->uri() ]);
}

Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...