Класс Route
Один маршрут, используемый маршрутизатором для подключения запросов к параметрам.
Обычно не создается как самостоятельный. Используйте Router::connect() для создания маршрутов для вашего приложения.
Прямые подклассы
- Cake\Routing\Route\DashedRoute
- Cake\Routing\Route\EntityRoute
- Cake\Routing\Route\InflectedRoute
- Cake\Routing\Route\RedirectRoute
Косвенные подклассы
Резюме констант
-
arrayVALID_METHODS['GET','PUT','POST','PATCH','DELETE','OPTIONS','HEAD']
Резюме свойств
-
$_compiledRouteprotectedСкомпилированное регулярное выражение маршрутаstring|null -
$_extensionsprotectedСписок подключенных расширений для этого маршрута.array -
$_greedyprotectedbooleanЯвляется ли этот маршрут жадным маршрутом? Жадные маршруты имеют
/*в своей шаблоне -
$_nameprotectedИмя маршрута. Получить с помощью Route::getName();string|null -
$braceKeysprotectedОтслеживать, использовались ли фигурные скобкиboolean{var}. -
$defaultspublicПараметры по умолчанию для маршрутаarray -
$keyspublicarrayМассив именованных сегментов в маршруте.
/:controller/:action/:idимеет 3 ключевых элемента -
$middlewareprotectedСписок промежуточного программного обеспечения, которое должно быть применено.array -
$optionspublicМассив дополнительных параметров для маршрута.array -
$templatepublicШаблон строки маршрута.string|null
Резюме методов
- __construct() publicКонструктор маршрута
- Магический метод установки состояния для поддержки 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Получение стандартного имени plugin.controller:action для маршрута.
- hostMatches() publicПроверка соответствия хоста требованиям маршрута
- match() publicПроверка соответствия массива URL этому экземпляру маршрута.
- Проверка возможности парсинга данного URL данным маршрутом.
- parseRequest() publicПроверка возможности парсинга данного URL данным маршрутом.
- setExtensions() publicУстановка поддерживаемых расширений для этого маршрута.
- setHost() publicУстановка требования хоста
- setMethods() publicУстановка допустимых HTTP-методов для этого маршрута.
- setMiddleware() publicУстановка имён промежуточного программного обеспечения, которое должно быть применено к этому маршруту.
- setPass() publicУстановка имён параметров, которые будут преобразованы в передаваемые параметры
- setPatterns() publicУстановка регулярных выражений для параметров маршрутизации
- setPersist() publicУстановка имён параметров, которые будут автоматически сохранены
- staticPath() publicПолучение статической части пути для данного маршрута.
Подробное описание метода
__construct()source public
__construct( string $template , array|string $defaults = [] , array $options = [] )
Конструктор маршрута
Параметры
-
_ext- Определяет расширения, используемые для данного маршрута. -
_middleware- Определяет имена промежуточного программного обеспечения для этого маршрута. -
pass- Копирует перечисленные параметры в params['pass']. -
_host- Определяет шаблон имени хоста, если этот маршрут должен соответствовать только определённым именам хостов. Можно использовать.*и для создания поддоменных/хостовых шаблонов подстановок, например*.example.comсоответствует всем поддоменам на %%%CODE_BLOCK_33%%.
Параметры
- строка
$template - Строка шаблона с заполнительми параметров
- массив|строка
$defaultsопционально [] - Значения по умолчанию для маршрута.
- массив
$optionsопционально [] - Массив дополнительных опций для маршрута
__set_state()source public static
__set_state( array $fields )
Магический метод установки состояния для поддержки var_export
Этот метод помогает приложениям, которые хотят реализовать кэширование маршрутизатора.
Параметры
- массив
$fields - Ключи/Значения атрибутов объекта
Возвращает
Cake\Routing\Route\RouteНовый экземпляр маршрута
_matchMethod()source protected
_matchMethod( array $url )
Проверка соответствия HTTP-метода URL.
Параметры
- массив
$url - Массив для генерируемого URL.
Возвращает
boolean_parseArgs()source protected
_parseArgs( string $args , string $context )
Разбор переданных параметров в список аргументов.
Возвращает true, если значение заданного параметра $param's $val соответствует заданному правилу $rule в зависимости от $context. В настоящее время реализованы типы правил: controller, action и match, которые можно комбинировать.
Параметры
- строка
$args - Строка с переданными параметрами. Пример: /1/foo
- строка
$context - Текущий контекст маршрута, который должен содержать ключи controller/action.
Возвращаемое значение
массивМассив переданных аргументов.
_parseExtension()source protected
_parseExtension( string $url )
Удаляет расширение из $url, если оно содержит зарегистрированное расширение. Если зарегистрированное расширение не найдено, расширение не возвращается, и URL возвращается без изменений.
Параметры
- строка
$url - URL для разбора.
Возвращаемое значение
массивсодержащий url, extension
_persistParams()source protected
_persistParams( array $url , array $params )
Применение постоянных параметров к массиву URL. Постоянные параметры — это специальный ключ, используемый при создании маршрутов, чтобы принудительно сохранить параметры маршрута, если они отсутствуют в массиве URL.
Параметры
- массив
$url - Массив, к которому применяются постоянные параметры.
- массив
$params - Массив постоянных значений для замены постоянных.
Возвращаемое значение
массивМассив с примененными постоянными параметрами.
_writeRoute()source protected
_writeRoute( )
Строит регулярное выражение маршрута.
Использует свойства template, defaults и options для компиляции регулярного выражения, которое можно использовать для разбора строк запроса.
_writeUrl()source protected
_writeUrl( array $params , array $pass = [] , array $query = [] )
Преобразует массив совпадающего маршрута в строку URL.
Составляет строку URL с использованием шаблона, используемого для создания маршрута.
Параметры
- массив
$params - Параметры для преобразования в строку url
- массив
$passнеобязательно [] - Дополнительные переданные аргументы
- массив
$queryнеобязательно [] - Массив параметров
Возвращаемое значение
строкаСкомпонованная строка маршрута.
compile()source public
compile( )
Компилирует регулярное выражение маршрута.
Изменяет свойство defaults, чтобы все необходимые ключи были установлены, и заполняет $this->names именованными элементами маршрутизации.
Возвращаемое значение
строкаВозвращает строковое регулярное выражение скомпилированного маршрута.
compiled()source public
compiled( )
Проверка, был ли маршрут скомпилирован в регулярное выражение.
Возвращаемое значение
логическое значениеextensions()source public deprecated
extensions( null|string|array $extensions = null )
Получение/установка поддерживаемых расширений для данного маршрута.
Устарело
3.3.9 Используйте getExtensions/setExtensions вместо этого.Параметры
- null|строка|массив
$extensionsнеобязательно null - Расширения для установки. Используйте null для получения.
Возвращаемое значение
массив|nullРасширения или null.
getExtensions()source public
getExtensions( )
Получение поддерживаемых расширений для данного маршрута.
Возвращаемое значение
массивgetMiddleware()source public
getMiddleware( )
Получение имен middleware, которые должны быть применены к данному маршруту.
Возвращаемое значение
массивgetName()source public
getName( )
Получение стандартного имени plugin.controller:action для маршрута.
Возвращаемое значение
строкаhostMatches()source public
hostMatches( string $host )
Проверка соответствия хоста требованиям маршрута
Параметры
- строка
$host - Имя хоста запроса
Возвращаемое значение
логическое значениеСоответствует ли хост каким-либо условиям, заданным для этого маршрута.
match()source public
match( array $url , array $context = [] )
Проверка соответствия массива URL экземпляру маршрута.
Если URL соответствует параметрам и настройкам маршрута, возвращает сгенерированный URL-адрес. Если URL не соответствует параметрам маршрута, возвращается false. Этот метод обрабатывает обратную маршрутизацию или преобразование массивов URL в строковые URL-адреса.
Параметры
- массив
$url - Массив параметров для проверки соответствия.
- массив
$contextнеобязательно [] Массив текущего контекста запроса. Содержит информацию, такую как текущий хост, схема, порт, базовый каталог и другие URL-параметры.
Возвращаемое значение
строка|falseСтрока URL для параметров, если они совпадают, или false.
parse()source public deprecated
parse( string $url , string $method = '' )
Проверка, может ли данный URL быть проанализирован этим маршрутом.
Если маршрут может быть проанализирован, возвращается массив параметров; если нет, возвращается false. Строки URL анализируются, если они соответствуют регулярному выражению маршрута.
Устарело
3.4.0 Используйте/реализуйте parseRequest() вместо этого, так как это предоставляет больше гибкости/контроля.Параметры
- строка
$url - URL для попытки анализа.
- строка
$methodнеобязательно '' - HTTP-метод запроса, который анализируется.
Возвращаемое значение
массив|falseМассив параметров запроса или false в случае неудачи.
parseRequest()source public
parseRequest( Psr\Http\Message\ServerRequestInterface $request )
Проверка, может ли данный URL быть проанализирован этим маршрутом.
Если маршрут может быть проанализирован, возвращается массив параметров; если нет, возвращается false.
Параметры
- Psr\Http\Message\ServerRequestInterface
$request - URL для попытки анализа.
Возвращаемое значение
массив|falseМассив параметров запроса или false в случае неудачи.
setExtensions()source public
setExtensions( array $extensions )
Установка поддерживаемых расширений для этого маршрута.
Параметры
- массив
$extensions - Расширения для установки.
Возвращаемое значение
$this
setHost()source public
setHost( string $host )
Установка требования к хосту
Параметры
- строка
$host - Имя хоста, к которому привязан этот маршрут
Возвращаемое значение
$this
setMethods()source public
setMethods( array $methods )
Установка допустимых HTTP-методов для данного маршрута.
Параметры
- массив
$methods - HTTP-методы для принятия.
Возвращаемое значение
$this
Исключения
InvalidArgumentExceptionsetMiddleware()source public
setMiddleware( array $middleware )
Установите имена middleware, которые должны применяться к этому маршруту.
Параметры
- массив
$middleware Список имён middleware, которые нужно применить к этому маршруту. Имена middleware не будут проверены, пока маршрут не будет сопоставлен.
Возвращает
$this
setPass()source public
setPass( array $names )
Установите имена параметров, которые будут преобразованы в передаваемые параметры
Параметры
- массив
$names - Имена параметров, которые необходимо передать.
Возвращает
$this
setPatterns()source public
setPatterns( array $patterns )
Установите регулярные выражения для параметров маршрутизации
Если любой из ваших шаблонов содержит многобайтовые значения, режим multibytePattern будет включён.
Параметры
- массив
$patterns - Шаблоны, которые необходимо применить к элементам маршрутизации
Возвращает
$this
setPersist()source public
setPersist( array $names )
Установите имена параметров, которые будут автоматически сохранены
Постоянные параметры позволяют определить, какие параметры маршрута должны быть автоматически включены при генерации новых URL-адресов. Вы можете переопределить постоянные параметры, повторно определив их в URL-адресе, или удалить их, установив постоянный параметр в false.
// remove a persistent 'date' parameter Router::url(['date' => false', ...]);
Параметры
- массив
$names - Имена параметров, которые необходимо передать.
Возвращает
$this
staticPath()source public
staticPath( )
Получить статическую часть пути для этого маршрута.
Возвращает
строкаПодробности свойств
$_greedysource
protected логическое
Является ли этот маршрут жадным маршрутом? Жадные маршруты имеют /* в своём шаблоне
false
$keyssource
public массив
Массив именованных сегментов в маршруте. /:controller/:action/:id имеет 3 ключевых элемента
[]
© 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/3.8/class-Cake.Routing.Route.Route.html