Класс yii\web\UrlNormalizer
| Наследование | yii\web\UrlNormalizer » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.0.10 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/web/UrlNormalizer.php |
UrlNormalizer нормализует URL-адреса для yii\web\UrlManager и yii\web\UrlRule.
Общественные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $action | целое число|вызов|null | Действие для выполнения во время нормализации маршрута. | yii\web\UrlNormalizer |
| $collapseSlashes | boolean | Следует ли сжимать косые черты, например site///index будет преобразовано в site/index
| yii\web\UrlNormalizer |
| $normalizeTrailingSlash | boolean | Следует ли нормализовать конечную косую черту в соответствии с настройками суффикса правила | yii\web\UrlNormalizer |
Общественные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Object |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т. е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| normalizePathInfo() | Нормализует указанный pathInfo. | yii\web\UrlNormalizer |
| normalizeRoute() | Выполняет действие нормализации для указанного $route. | yii\web\UrlNormalizer |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| collapseSlashes() | Сжимает последовательные косые черты в $pathInfo, например преобразует site///index в site/index. | yii\web\UrlNormalizer |
| normalizeTrailingSlash() | Добавляет или удаляет конечные косые черты из $pathInfo в зависимости от того, содержит ли $suffix конечную косую черту или нет. | yii\web\UrlNormalizer |
Константы
| Константа | Значение | Описание | Определено в |
|---|---|---|---|
| ACTION_NOT_FOUND | 404 | Представляет отображение страницы ошибки 404 во время нормализации маршрута. | yii\web\UrlNormalizer |
| ACTION_REDIRECT_PERMANENT | 301 | Представляет постоянное перенаправление во время нормализации маршрута. | yii\web\UrlNormalizer |
| ACTION_REDIRECT_TEMPORARY | 302 | Представляет временное перенаправление во время нормализации маршрута. | yii\web\UrlNormalizer |
Подробности свойств
$action общественное свойство
Действие, выполняемое во время нормализации маршрута. Доступные варианты:
-
null- не будет выполнено никакого специального действия -
301- запрос должен быть перенаправлен на нормализованный URL с использованием постоянного перенаправления -
302- запрос должен быть перенаправлен на нормализованный URL с использованием временного перенаправления -
404- будет выброшено yii\web\NotFoundHttpException -
callable- пользовательская функция обратного вызова, например:function ($route, $normalizer) { // use custom action for redirections $route[1]['oldRoute'] = $route[0]; $route[0] = 'site/redirect'; return $route; }
public integer|callable|null $action = self::ACTION_REDIRECT_PERMANENT
$collapseSlashes общественное свойство
Следует ли сжимать косые черты, например site///index будет преобразовано в site/index
public boolean $collapseSlashes = true
$normalizeTrailingSlash общественное свойство
Следует ли нормализовать конечную косую черту в соответствии с настройками суффикса правила
public boolean $normalizeTrailingSlash = true
Подробности методов
collapseSlashes() защищённый метод
Сжимает последовательные косые черты в $pathInfo, например, преобразует site///index в site/index.
| защищённый строка collapseSlashes ( $pathInfo ) | ||
|---|---|---|
| $pathInfo | строка |
Исходная информация о пути. |
| возвращает | строка |
Нормализованная информация о пути. |
normalizePathInfo() публичный метод
Нормализует указанную информацию о пути.
| публичный строка normalizePathInfo ( $pathInfo, $suffix, &$normalized = false ) | ||
|---|---|---|
| $pathInfo | строка |
Информация о пути для нормализации |
| $suffix | строка |
Текущий суффикс правила |
| $normalized | булево |
Если указано, эта переменная будет установлена в |
| возвращает | строка |
Нормализованная информация о пути |
normalizeRoute() публичный метод
Выполняет действие нормализации для указанного $route.
| публичный массив normalizeRoute ( $route ) | ||
|---|---|---|
| $route | массив |
Маршрут для нормализации |
| возвращает | массив |
Нормализованный маршрут |
| выбрасывает | yii\base\InvalidConfigException |
если используется неверное действие нормализации. |
| выбрасывает | yii\web\UrlNormalizerRedirectException |
если нормализация требует переадресации. |
| выбрасывает | yii\web\NotFoundHttpException |
если нормализация предполагает, что действие, соответствующее маршруту, не существует. |
normalizeTrailingSlash() защищённый метод
Добавляет или удаляет конечные косые черты из $pathInfo в зависимости от наличия или отсутствия конечной косой черты у $suffix.
| защищённый строка normalizeTrailingSlash ( $pathInfo, $suffix ) | ||
|---|---|---|
| $pathInfo | строка |
Исходная информация о пути. |
| $suffix | строка | |
| возвращает | строка |
Нормализованная информация о пути. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-web-urlnormalizer.html