Метод getRequestUri
Метод getRequestUri принадлежит классу Request и возвращает URI (Uniform Resource Identifier) текущего запроса. В отличие от метода getPathInfo, который возвращает только путь, данный метод включает в себя строку запроса с параметрами. Метод не принимает параметров и возвращает строку.
Синтаксис
public function getRequestUri(): string
Пример
Давайте получим URI текущего запроса в контроллере:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationRequest;
use SymfonyComponentHttpFoundationResponse;
class ArticleController extends AbstractController
{
public function index(Request $request): Response
{
$res = $request->getRequestUri();
return new Response($res);
}
}
?>
Результат выполнения кода для адреса /article?page=2:
/article?page=2
Пример
Давайте сравним вывод методов getRequestUri и getPathInfo:
<?php
namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationRequest;
use SymfonyComponentHttpFoundationResponse;
class ArticleController extends AbstractController
{
public function index(Request $request): Response
{
$uri = $request->getRequestUri();
$path = $request->getPathInfo();
return new Response($uri . ' | ' . $path);
}
}
?>
Результат выполнения кода для адреса /user/abcde?sort=asc:
/user/abcde?sort=asc | /user/abcde
Смотрите также
-
класс
Request,
который представляет HTTP-запрос -
метод
getPathInfo,
который возвращает путь без строки запроса -
метод
getQueryString,
который возвращает строку запроса -
метод
getUri,
который возвращает полный URI запроса