Класс Route
Один маршрут, используемый маршрутизатором для подключения запросов к параметрам.
Обычно не создается как самостоятельный. Используйте Router::connect() для создания маршрутов для вашего приложения.
Прямые подклассы
Косвенные подклассы
Резюме констант
-
array['GET','PUT','POST','PATCH','DELETE','OPTIONS','HEAD']
Резюме свойств
-
$_compiledRouteprotectedКомпилированное регулярное выражение маршрутаstring|null -
$_extensionsprotectedСписок подключенных расширений для этого маршрута.array -
$_greedyprotectedbooleanЯвляется ли этот маршрут жадным? Жадные маршруты содержат
/*в своем шаблоне -
$_nameprotectedИмя маршрута. Получить с помощью Route::getName();string|null -
$defaultspublicПараметры по умолчанию для маршрутаarray -
$keyspublicarrayМассив именованных сегментов в маршруте.
/:controller/:action/:idимеет 3 ключевых элемента -
$middlewareprotectedСписок middleware, который должен быть применен.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Проверка, был ли маршрут скомпилирован в регулярное выражение.
- extensions() publicПолучение/установка поддерживаемых расширений для этого маршрута.
- getExtensions() publicПолучение поддерживаемых расширений для этого маршрута.
- getMiddleware() publicПолучение имён middleware, которые должны быть применены к этому маршруту.
- getName() publicПолучение стандартного имени plugin.controller:action для маршрута.
- hostMatches() publicПроверка соответствия хоста требованиям маршрута
- match() publicПроверка соответствия массива URL данному экземпляру маршрута.
- parse() publicПроверка возможности разбора данного URL с помощью этого маршрута.
- parseRequest() publicПроверка возможности разбора данного URL с помощью этого маршрута.
- setExtensions() publicУстановка поддерживаемых расширений для этого маршрута.
- setHost() publicУстановка требования к хосту
- setMethods() publicУстановка принятых HTTP-методов для этого маршрута.
- setMiddleware() publicУстановка имён middleware, которые должны быть применены к этому маршруту.
- setPass() publicУстановите имена параметров, которые будут преобразованы в переданные параметры
- setPatterns() publicУстановка регулярных выражений для параметров маршрутизации
- setPersist() publicУстановите имена параметров, которые будут автоматически сохранены
- staticPath() publicПолучить статическую часть пути для этого маршрута.
Подробности метода
__construct()source public
__construct( string $template , array|string $defaults [] , array $options [] )
Конструктор маршрута
Параметры
-
_ext- Определяет расширения, используемые для этого маршрута. -
_middleware- Определите имена middleware для этого маршрута. -
pass- Копирует перечисленные параметры в params['pass']. -
_host- Определите шаблон имени хоста, если вы хотите, чтобы этот маршрут соответствовал только определенным именам хостов. Вы можете использовать.*и для создания поддоменных/хостовых шаблонов с подстановкой, например,*.example.comсоответствует всем поддоменам наexample.com.
Параметры
- строка
$template - Строка шаблона с заполнительными параметрами
- массив|строка
$defaultsoptional [] - Значения по умолчанию для маршрута.
- массив
$optionsoptional [] - Массив дополнительных опций для маршрута
__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 и его значение $val соответствуют заданному правилу $rule в зависимости от контекста $context. В настоящее время реализованы типы правил: контроллер, действие и соответствие, которые могут быть объединены друг с другом.
Параметры
- строка
$args - Строка с переданными параметрами. Например, /1/foo
- строка
$context - Текущий контекст маршрута, который должен содержать ключи контроллера/действия.
Возвращает
массивМассив переданных аргументов.
_parseExtension()source protected
_parseExtension( string $url )
Удаляет расширение из $url, если оно содержит зарегистрированное расширение. Если зарегистрированное расширение не найдено, расширение не возвращается, и URL возвращается без изменений.
Параметры
- строка
$url - URL для разбора.
Возвращает
массивсодержащий url, расширение
_persistParams()source protected
_persistParams( array $url , array $params )
Применение постоянных параметров к массиву URL. Постоянные параметры — это специальный ключ, используемый при создании маршрута, чтобы принудительно сохранить параметры маршрута, когда они отсутствуют в массиве URL.
Параметры
- массив
$url - Массив, к которому применяются постоянные параметры.
- массив
$params - Массив постоянных значений, которые заменяют постоянные значения.
Возвращает
массивМассив с применёнными постоянными параметрами.
_writeRoute()source protected
_writeRoute( )
Создаёт регулярное выражение маршрута.
Использует свойства шаблона, значений по умолчанию и опций для компиляции регулярного выражения, которое может быть использовано для разбора строк запроса.
_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
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( )
Получение стандартизированного имени плагина.контроллер:действие для маршрута.
Возвращает
строка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
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–2017 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.4/class-Cake.Routing.Route.Route.html