Свойства URL
Получить данные текущего URL можно через объект Request
.
# httsp://know-online.com/news/show/14?sort=name
use Illuminate\Http\Request;
// метод контроллера
public function show(Request $request, $id)
{
url()->current(); // https://know-online.com/news/show/14
url()->full(); // https://know-online.com/news/show/14?sort=name
$request->path(); // news/show/14
$request->url(); // https://know-online.com/news/show/14
$request->fullUrl(); // https://know-online.com/news/show/14?sort=name
$request->host(); // know-online.com
$request->schemeAndHttpHost(); // http://know-online.com
$request->query('sort'); // name (вместо $_GET['sort'])
$request->query('sort', 'date'); // name (если не передан, возвращает «date»)
$request->query(); // массив $_GET-запросов
$request->has('sort'); // true, если $_GET-запрос передан (может быть пустым)
$request->filled('sort'); // true, если $_GET-запрос передан и он не пустой
}
Получить ссылку без указанных строк запроса
Получить url без указанных строк запроса можно через метод $request->fullUrlWithoutQuery()
.
# /news/show/14?sort=name&token=34235
use Illuminate\Http\Request;
// метод контроллера
public function show(Request $request, $id)
{
$request->fullUrlWithoutQuery(['token']); // https://know-online.com/news/show/14?sort=name
}
Заменить в ссылке строку запроса
Если в ссылке надо заменить строку запроса, то это можно сделать через метод url()->query()
.
echo url()->query('/catalog/?sort=id&order=asc', ['sort' => 'price']);
// https://know-online.com/catalog/?sort=price&order=asc
Ссылка предыдущей страницы
Получить URL предыдущей страницы можно через метод url()->previous()
.
// полный URL предыдущей страницы (включая домен и строку запроса)
echo url()->previous();
Поддержать автора
Все статьи создаются и поддерживаются одним человеком,
если вам нравится контент, вы можете поддержать автора сайта