Spec-Zone.ru › CakePHP 3.6

Класс EntityRoute

Сопоставляет сущности с маршрутами

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

Cake\Routing\Route\Route
Extended by Cake\Routing\Route\EntityRoute
Пространство имен: Cake\Routing\Route
Расположение: Routing/Route/EntityRoute.php

Наследуемые константы

  • VALID_METHODS

Наследуемые свойства

  • _compiledRoute, _extensions, _greedy, _name, braceKeys, defaults, keys, middleware, options, template

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

  • _checkEntity() protected
    Проверяет, что мы действительно имеем дело с объектом сущности
  • match() public

    Сопоставление по сущности и сопоставление её полей с шаблоном URL, сравнивая имена полей с переменными шаблона.

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

_checkEntity()source protected

_checkEntity( ArrayAccess|array $entity )

Проверяет, что мы действительно имеем дело с объектом сущности

Параметры

ArrayAccess|array $entity
Значение сущности из параметров URL

Исключения

RuntimeException

match()source public

match( array $url , array $context = [] )

Сопоставление по сущности и сопоставление её полей с шаблоном URL, сравнивая имена полей с переменными шаблона.

Если ключ маршрутизации определён как в $url, так и в сущности, будет использовано значение, определённое в $url.

Параметры

array $url
Массив параметров для преобразования в строку.
array $context необязательно []

Массив текущего контекста запроса. Содержит информацию, такую как текущий хост, схема, порт и базовый каталог.

Возвращаемое значение

boolean|string
Либо false, либо строка URL.

Переопределяет

Cake\Routing\Route\Route::match()

Методы, унаследованные от Cake\Routing\Route\Route

__construct()source public

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

Конструктор для маршрута

Параметры

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

Параметры

string $template
Строка шаблона с параметрами-заменителем
array|string $defaults необязательно []
Значения по умолчанию для маршрута.
array $options необязательно []
Массив дополнительных параметров для маршрута

__set_state()source public static

__set_state( array $fields )

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

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

Параметры

array $fields
Ключ/значение атрибутов объекта

Возвращаемое значение

Cake\Routing\Route\Route
Новый экземпляр маршрута

_matchMethod()source protected

_matchMethod( array $url )

Проверка соответствия HTTP-метода URL.

Параметры

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

Возвращаемое значение

boolean

_parseArgs()source protected

_parseArgs( string $args , string $context )

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

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

Параметры

string $args
Строка с переданными параметрами. Например, /1/foo
string $context
Текущий контекст маршрута, который должен содержать ключи controller/action.

Возвращаемое значение

array
Массив переданных аргументов.

_parseExtension()source protected

_parseExtension( string $url )

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

Параметры

string $url
URL для разбора.

Возвращаемое значение

array
содержащий url, extension

_persistParams()source protected

_persistParams( array $url , array $params )

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

Параметры

array $url
Массив, к которому нужно применить постоянные параметры.
array $params
Массив постоянных значений, которые нужно заменить постоянными.

Возвращаемое значение

array
Массив с применёнными постоянными параметрами.

_writeRoute()source protected

_writeRoute( )

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

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

_writeUrl()source protected

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

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

Составляет строку URL, используя шаблон, используемый для создания маршрута.

Параметры

array $params
Параметры для преобразования в строку url
array $pass необязательно []
Дополнительные переданные аргументы
array $query необязательно []
Массив параметров

Возвращаемое значение

string
Сгенерированная строка маршрута.

compile()source public

compile( )

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

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

Возвращаемое значение

string
Возвращает строку регулярного выражения скомпилированного маршрута.

compiled()source public

compiled( )

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

Возвращаемое значение

boolean

extensions()source public устаревший

extensions( null|string|array $extensions = null )

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

Устаревший

3.3.9 Используйте getExtensions/setExtensions вместо этого.

Параметры

null|string|array $extensions необязательно null
Расширения для установки. Используйте null для получения.

Возвращаемое значение

array|null
Расширения или null.

getExtensions()source public

getExtensions( )

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

Возвращает

array

getMiddleware()source public

getMiddleware( )

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

Возвращает

array

getName()source public

getName( )

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

Возвращает

string

hostMatches()source public

hostMatches( string $host )

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

Параметры

string $host
Имя хоста запроса

Возвращает

boolean
Соответствует ли хост условиям, заданным для этого маршрута.

parse()source public deprecated

parse( string $url , string $method = '' )

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

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

Устаревшее

3.4.0 Используйте/реализуйте parseRequest() вместо этого, так как она предоставляет большую гибкость/контроль.

Параметры

string $url
URL, который нужно попробовать разобрать.
string $method необязательно ''
Метод HTTP запроса, который разбирается.

Возвращает

array|false
Массив параметров запроса или false при ошибке.

parseRequest()source public

parseRequest( Psr\Http\Message\ServerRequestInterface $request )

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

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

Параметры

Psr\Http\Message\ServerRequestInterface $request
URL, который нужно попробовать разобрать.

Возвращает

array|false
Массив параметров запроса или false при ошибке.

setExtensions()source public

setExtensions( array $extensions )

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

Параметры

array $extensions
Расширения для установки.

Возвращает


$this

setHost()source public

setHost( string $host )

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

Параметры

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

Возвращает


$this

setMethods()source public

setMethods( array $methods )

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

Параметры

array $methods
Методы HTTP, которые следует принять.

Возвращает


$this

Исключения

InvalidArgumentException

setMiddleware()source public

setMiddleware( array $middleware )

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

Параметры

array $middleware

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

Возвращает


$this

setPass()source public

setPass( array $names )

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

Параметры

array $names
Имена параметров, которые должны передаваться.

Возвращает


$this

setPatterns()source public

setPatterns( array $patterns )

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

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

Параметры

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

Возвращает


$this

setPersist()source public

setPersist( array $names )

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

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

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

Параметры

array $names
Имена параметров, которые должны передаваться.

Возвращает


$this

staticPath()source public

staticPath( )

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

Возвращает

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/3.6/class-Cake.Routing.Route.EntityRoute.html

Spec-Zone.ru

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