РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
143 of 1361 menu

Константа UID_BASE32

Константа UID_BASE32 принадлежит классу Requirement и содержит регулярное выражение для проверки значений, являющихся Base32-идентификаторами (UID). Она используется в параметре requirements атрибута Route, чтобы ограничить допустимые значения переменных маршрута. Это особенно полезно при работе с сущностями, у которых первичный ключ представлен в формате Base32.

Синтаксис

Requirement::UID_BASE32

Пример

Давайте создадим маршрут, который принимает только Base32-идентификатор:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; use SymfonyComponentRoutingRequirement; class ArticleController extends AbstractController { #[Route('/article/{id}', name: 'article_show', requirements: ['id' => Requirement::UID_BASE32])] public function show(string $id): Response { return new Response("Article ID: $id"); } } ?>

Результат выполнения кода для адреса /article/01ARZ3NDEKTSV4RRFFQ69G5FAV:

"Article ID: 01ARZ3NDEKTSV4RRFFQ69G5FAV"

Если же передать значение, не соответствующее формату Base32, например /article/abcde, Symfony вернёт ошибку 404.

Пример

Давайте используем константу вместе с параметром defaults:

<?php namespace AppController; use SymfonyBundleFrameworkBundleControllerAbstractController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAttributeRoute; use SymfonyComponentRoutingRequirement; class ArticleController extends AbstractController { #[Route( '/article/{id}', name: 'article_show', requirements: ['id' => Requirement::UID_BASE32], defaults: ['id' => '01ARZ3NDEKTSV4RRFFQ69G5FAV'] )] public function show(string $id): Response { return new Response("Article ID: $id"); } } ?>

Результат выполнения кода для адреса /article:

"Article ID: 01ARZ3NDEKTSV4RRFFQ69G5FAV"

Смотрите также

  • класс Requirement,
    который содержит набор констант для проверки параметров
  • константа UUID,
    которая задаёт регулярное выражение для UUID
  • константа ULID,
    которая задаёт регулярное выражение для ULID
  • параметр requirements,
    который задаёт требования к параметрам маршрута
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить