Spec-Zone.ru › CakePHP 4.2

Класс RedirectRoute

Маршрут перенаправления выполнит немедленное перенаправление. Маршруты перенаправления полезны, когда вам нужно, чтобы в вашем приложении произошли перенаправления уровня маршрутизации, когда URL-адреса перемещаются.

Перенаправление сигнализируется исключением, которое останавливает сопоставление маршрута и определяет URL-адрес перенаправления и код состояния.

Пространство имен: Cake\Routing\Route

Константы

  • array
    VALID_METHODS
    ['GET', 'PUT', 'POST', 'PATCH', 'DELETE', 'OPTIONS', 'HEAD']

    Допустимые HTTP-методы.

Краткое описание свойств

  • $_compiledRoute protected
    string|null

    Скомпилированное регулярное выражение маршрута

  • $_extensions protected
    string[]

    Список подключенных расширений для этого маршрута.

  • $_greedy protected
    bool

    Является ли этот маршрут жадным маршрутом? Жадные маршруты имеют /* в их шаблоне

  • $_name protected
    string|null

    Имя маршрута. Получить с помощью Route::getName();

  • $braceKeys protected
    bool

    Отслеживать, использовались ли фигурные скобки {var}.

  • $defaults public
    array

    Параметры по умолчанию для маршрута

  • $keys public
    array

    Массив именованных сегментов в маршруте. /{controller}/{action}/{id} имеет 3 ключевых элемента

  • $middleware protected
    array

    Список мидлваров, которые должны быть применены.

  • $options public
    array

    Массив дополнительных параметров для маршрута.

  • $redirect public
    array

    Место назначения перенаправления.

  • $template public
    string

    Строка шаблона маршрутов.

Краткое описание методов

  • __construct() public

    Конструктор

  • __set_state() public static

    Магический метод установки состояния для поддержки var_export

  • _matchMethod() protected

    Проверить, соответствует ли HTTP-метод URL.

  • _parseArgs() protected

    Разбор переданных параметров в список переданных аргументов.

  • _parseExtension() protected

    Удаляет расширение из $url, если оно содержит зарегистрированное расширение. Если зарегистрированное расширение не найдено, расширение не возвращается, а URL возвращается без изменений.

  • _persistParams() protected

    Применение постоянных параметров к массиву URL. Постоянные параметры — это специальный ключ, используемый при создании маршрута, чтобы принудительно сохранить параметры маршрута при их отсутствии в массиве URL.

  • _writeRoute() protected

    Создает регулярное выражение маршрута.

  • _writeUrl() protected

    Преобразование массива сопоставленного маршрута в строку URL.

  • compile() public

    Компилирует регулярное выражение маршрута.

  • compiled() public

    Проверяет, был ли маршрут скомпилирован в регулярное выражение.

  • getExtensions() public

    Получить поддерживаемые расширения для этого маршрута.

  • getMiddleware() public

    Получить имена мидлваров, которые должны быть применены к этому маршруту.

  • getName() public

    Получить стандартизованное имя плагина.контроллер:действие для маршрута.

  • hostMatches() public

    Проверка соответствия хоста требованиям маршрута.

  • match() public

    Нет обратного перенаправления маршрутизации.

  • normalizeAndValidateMethods() protected

    Нормализация имен методов в верхний регистр и проверка на то, что они являются допустимыми HTTP-методами.

  • parse() public

    Разбирает строковый URL в массив. Разбор URL приведет к автоматическому перенаправлению.

  • parseRequest() public

    Проверка возможности разбора данного URL этим маршрутом.

  • setExtensions() public

    Установить поддерживаемые расширения для этого маршрута.

  • setHost() public

    Установить требование к хосту

  • setMethods() public

    Установить допустимые HTTP-методы для этого маршрута.

  • setMiddleware() public

    Установить имена мидлваров, которые должны быть применены к этому маршруту.

  • setPass() public

    Установить имена параметров, которые будут преобразованы в переданные параметры

  • setPatterns() public

    Установить регулярные выражения для параметров маршрутизации

  • setPersist() public

    Установить имена параметров, которые будут автоматически сохранены

  • setStatus() public

    Устанавливает HTTP-код состояния

  • staticPath() public

    Получить статическую часть пути для этого маршрута.

END_OF_DOCUMENT_MARKER

Подробное описание методов

__construct() public

__construct(string $template, array $defaults = [], array $options = [])

Конструктор

Параметры

  • _ext - Определяет расширения, используемые для этого маршрута.
  • _middleware - Определяет имена мидлваров для этого маршрута.
  • pass - Копирует перечисленные параметры в params['pass'].
  • _method - Определяет HTTP-методы(ы), к которым применяется маршрут. Может быть строкой или массивом допустимых имён HTTP-методов.
  • _host - Определяет шаблон имени хоста, если маршрут должен соответствовать только определённым именам хостов. Можно использовать .* и для создания поддоменов/хостов с подстановочными знаками, например, *.example.com соответствует всем поддоменам на example.com.
  • '_port` - Определяет порт, если маршрут должен соответствовать только определённому номеру порта.

Параметры

string $template

Шаблонная строка с заполнительми параметров

array $defaults необязательный

Значения по умолчанию для маршрута. Либо массив redirect=>value, либо URL-массив CakePHP.

array $options необязательный

Массив дополнительных опций для маршрута

__set_state() public static

__set_state(array $fields): static

Магический метод установки состояния для поддержки var_export

Этот метод помогает приложениям, которые хотят реализовать кэширование маршрутизатора.

Параметры

array $fields

Ключ/Значение атрибутов объекта

Возвращает

static

_matchMethod() protected

_matchMethod(array $url): bool

Проверяет, соответствует ли HTTP-метод URL.

Параметры

array $url

Массив для генерируемого URL.

Возвращает

bool

_parseArgs() protected

_parseArgs(string $args, array $context): string[]

Разбирает переданные параметры в список переданных аргументов.

Возвращает true, если заданное имя $param с $val соответствует заданному $rule в зависимости от $context. В настоящее время реализованы типы правил: controller, action и match, которые могут быть объединены друг с другом.

Параметры

string $args

Строка с переданными параметрами. Пример: /1/foo

array $context

Текущий контекст маршрута, который должен содержать ключи controller/action.

Возвращает

string[]

_parseExtension() protected

_parseExtension(string $url): array

Удаляет расширение из $url, если он содержит зарегистрированное расширение. Если зарегистрированное расширение не найдено, расширение не возвращается, и URL возвращается без изменений.

Параметры

string $url

URL для разбора.

Возвращает

array

_persistParams() protected

_persistParams(array $url, array $params): array

Применяет постоянные параметры к массиву URL. Постоянные параметры — это специальный ключ, используемый во время создания маршрута, чтобы принудительно сохранить параметры маршрута при их отсутствии в массиве URL.

Параметры

array $url

Массив, к которому применяются постоянные параметры.

array $params

Массив постоянных значений для замены постоянных.

Возвращает

array

_writeRoute() protected

_writeRoute(): void

Создаёт регулярное выражение для маршрута.

Использует свойства template, defaults и options для компиляции регулярного выражения, которое можно использовать для разбора строк запроса.

Возвращает

void

_writeUrl() protected

_writeUrl(array $params, array $pass = [], array $query = []): string

Преобразует массив соответствующего маршрута в строку URL.

Создаёт строку URL с помощью шаблона, использованного для создания маршрута.

Параметры

array $params

Параметры для преобразования в строку url

array $pass необязательный

Дополнительные переданные аргументы

array $query необязательный

Массив параметров

Возвращает

string

compile() public

compile(): string

Компилирует регулярное выражение маршрута.

Изменяет свойство defaults, чтобы все необходимые ключи были установлены, и заполняет $this->names именованными элементами маршрутизации.

Возвращает

string

compiled() public

compiled(): bool

Проверяет, был ли маршрут скомпилирован в регулярное выражение.

Возвращает

bool

getExtensions() public

getExtensions(): string[]

Получить поддерживаемые расширения для этого маршрута.

Возвращает

string[]

getMiddleware() public

getMiddleware(): array

Получить имена мидлваров, которые должны быть применены к этому маршруту.

Возвращает

array

getName() public

getName(): string

Получить стандартизованное имя плагина.контроллер:действие для маршрута.

Возвращает

string

hostMatches() public

hostMatches(string $host): bool

Проверить, соответствует ли хост требованиям маршрута

Параметры

string $host

Имя хоста запроса

Возвращает

bool

match() public

match(array $url, array $context = []): string|null

Обратного маршрутизации для перенаправления маршрутов нет.

Если URL соответствует параметрам и настройкам маршрута, возвращается сгенерированная строка URL. Если URL не соответствует параметрам маршрута, возвращается false. Этот метод обрабатывает обратное маршрутизирование или преобразование массивов URL в строковые URL.

Параметры

array $url

Массив параметров для преобразования в строку.

array $context необязательный

Массив параметров контекста запроса.

Возвращает

string|null

normalizeAndValidateMethods() protected

normalizeAndValidateMethods(string|string[] $methods): string|string[]

Нормализует имена методов в верхний регистр и проверяет, являются ли они допустимыми HTTP-методами.

Параметры

string|string[] $methods

Методы.

Возвращает

string|string[]

Выбрасывает

InvalidArgumentException
При методах, которые не находятся в списке `VALID_METHODS`.

parse() public

parse(string $url, string $method = ''): array|null

Разбирает строковый URL в массив. Разбор URL приводит к автоматическому перенаправлению.

Если маршрут может быть разобран, возвращается массив параметров; если нет, возвращается false. Строковые URL разбираются, если они соответствуют регулярному выражению маршрута.

Параметры

string $url

URL для разбора.

string $method необязательный

Используемый HTTP-метод.

Возвращает

array|null

Выбрасывает

Cake\Http\Exception\RedirectException
Исключение возникает при успешном соответствии. Это используется для остановки сопоставления маршрутов и сигнализирует мидлверам о том, что должно произойти перенаправление.

parseRequest() public

parseRequest(Psr\Http\Message\ServerRequestInterface $request): array|null

Проверяет, может ли данный URL быть разобран этим маршрутом.

Если маршрут может быть разобран, возвращается массив параметров; если нет, возвращается false.

Параметры

Psr\Http\Message\ServerRequestInterface $request

URL, который нужно попробовать разобрать.

Возвращает

array|null

setExtensions() public

setExtensions(string[] $extensions): $this

Установите поддерживаемые расширения для этого маршрута.

Параметры

string[] $extensions

Расширения, которые нужно установить.

Возвращает

$this

setHost() public

setHost(string $host): $this

Установить требование к хосту

Параметры

string $host

Имя хоста, к которому привязан этот маршрут

Возвращает

$this

setMethods() public

setMethods(string[] $methods): $this

Установите допустимые HTTP-методы для этого маршрута.

Параметры

string[] $methods

HTTP-методы, которые необходимо принять.

Возвращает

$this

Выбрасывает

InvalidArgumentException
Когда методы отсутствуют в списке `VALID_METHODS`.

setMiddleware() public

setMiddleware(array $middleware): $this

Установите имена middleware, которые должны быть применены к этому маршруту.

Параметры

array $middleware

Список имён middleware, которые нужно применить к этому маршруту. Имена middleware будут проверены только при сопоставлении маршрута.

Возвращает

$this

setPass() public

setPass(string[] $names): $this

Установите имена параметров, которые будут преобразованы в передаваемые параметры

Параметры

string[] $names

Имена параметров, которые должны быть переданы.

Возвращает

$this

setPatterns() public

setPatterns(string[] $patterns): $this

Установить шаблоны регулярных выражений для параметров маршрутизации

Если какие-либо из ваших шаблонов содержат многобайтовые значения, режим multibytePattern будет включён.

Параметры

string[] $patterns

Шаблоны, которые нужно применить к элементам маршрутизации

Возвращает

$this

setPersist() public

setPersist(array $names): $this

Установите имена параметров, которые будут автоматически сохранены

Сохраняемые параметры позволяют определить, какие параметры маршрута должны быть автоматически включены при генерации новых URL. Вы можете переопределить сохраняемые параметры, повторно определив их в URL, или удалить их, установив сохраняемый параметр в значение false.

// remove a persistent 'date' parameter
Router::url(['date' => false', ...]);

Параметры

array $names

Имена параметров, которые должны быть переданы.

Возвращает

$this

setStatus() public

setStatus(int $status): $this

Устанавливает HTTP-статус

Параметры

int $status

Код состояния для этого маршрута

Возвращает

$this

staticPath() public

staticPath(): string

Получить статическую часть пути для этого маршрута.

Возвращает

string

Подробное описание свойств

$_compiledRoute protected

Скомпилированное регулярное выражение маршрута

Тип

string|null

$_extensions protected

Список подключенных расширений для этого маршрута.

Тип

string[]

$_greedy protected

Является ли этот маршрут жадным маршрутом? Жадные маршруты содержат /* в своём шаблоне

Тип

bool

$_name protected

Имя маршрута. Получить с помощью Route::getName();

Тип

string|null

$braceKeys protected

Отслеживает, использовались ли фигурные скобки {var}.

Тип

bool

$defaults public

Параметры по умолчанию для маршрута

Тип

array

$keys public

Массив именованных сегментов в маршруте. /{controller}/{action}/{id} содержит 3 ключевых элемента

Тип

array

$middleware protected

Список middleware, которые должны быть применены.

Тип

array

$options public

Массив дополнительных параметров для маршрута.

Тип

array

$redirect public

Место перенаправления.

Тип

array

$template public

Строка шаблона маршрута.

Тип

string

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.2/class-Cake.Routing.Route.RedirectRoute.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API