Константа UUID
Константа UUID класса Requirement содержит
регулярное выражение, которое проверяет, что значение
параметра маршрута является корректным UUID. Она
используется в параметре requirements атрибута
Route. Если значение не соответствует формату
UUID, Symfony вернёт ошибку 404.
Синтаксис
Requirement::UUID
Пример
Давайте потребуем, чтобы параметр id был
корректным UUID:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
use Symfony\Component\Routing\Requirement\Requirement;
class ArticleController extends AbstractController
{
#[Route('/article/{id}', name: 'article_show', requirements: ['id' => Requirement::UUID])]
public function show(string $id): Response
{
return new Response($id);
}
}
?>
Результат выполнения кода для адреса
/article/550e8400-e29b-41d4-a716-446655440000:
"550e8400-e29b-41d4-a716-446655440000"
Пример
Если значение не является корректным UUID, маршрут не совпадёт и Symfony вернёт ошибку 404:
No route found for "GET /article/abcde"
Смотрите также
-
класс
Requirement,
который содержит набор готовых требований для маршрутов -
константа
DIGITS,
которая требует только цифры в параметре -
константа
POSITIVE_INT,
которая требует положительное целое число -
параметр
requirements,
который задаёт требования к параметрам маршрута