Spec-Zone.ru › CakePHP 4.4

Класс Uri

Свойства base и webroot давно используют Uri. Для сохранения обратной совместимости и предотвращения ошибок динамических свойств в PHP 8.2 мы используем эту реализацию, которая декорирует Uri из Laminas

Этот класс является временной внутренней реализацией, которая будет удалена в версии 5.x

Namespace: Cake\Http

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

  • __construct() public

    Конструктор

  • __get() public

    Прокладка для обратной совместимости для ранее динамических свойств.

  • __toString() public

    Возвращает строковое представление в виде ссылки URI.

  • getAuthority() public

    Получить компонент authority URI.

  • getBase() public

    Получить базовый путь приложения.

  • getFragment() public

    Получить компонент fragment URI.

  • getHost() public

    Получить компонент host URI.

  • getPath() public

    Получить компонент path URI.

  • getPort() public

    Получить компонент port URI.

  • getQuery() public

    Получить строку запроса URI.

  • getScheme() public

    Получить компонент scheme URI.

  • getUri() public

    Получить декорированный URI

  • getUserInfo() public

    Получить компонент user information URI.

  • getWebroot() public

    Получить путь webroot приложения.

  • withFragment() public

    Возвращает экземпляр с указанным фрагментом URI.

  • withHost() public

    Возвращает экземпляр с указанным хостом.

  • withPath() public

    Возвращает экземпляр с указанным путем.

  • withPort() public

    Возвращает экземпляр с указанным портом.

  • withQuery() public

    Возвращает экземпляр с указанной строкой запроса.

  • withScheme() public

    Возвращает экземпляр с указанной схемой.

  • withUserInfo() public

    Возвращает экземпляр с указанной информацией о пользователе.

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

__construct() public

__construct(Psr\Http\Message\UriInterface $uri, string $base, string $webroot)

Конструктор

Параметры

Psr\Http\Message\UriInterface $uri

Экземпляр Uri для декорирования

string $base

Базовый путь.

string $webroot

Путь к корневому каталогу веб-сервера.

__get() public

__get(string $name): mixed

Прослойка обратной совместимости для ранее динамических свойств.

Параметры

string $name

Атрибут для чтения.

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

mixed

__toString() public

__toString(): string

Возвращает строковое представление в виде ссылки URI.

В зависимости от того, какие компоненты URI присутствуют, результирующая строка представляет собой либо полный URI, либо относительную ссылку в соответствии с RFC 3986, раздел 4.1. Метод объединяет различные компоненты URI, используя соответствующие разделители:

  • Если схема присутствует, она ДОЛЖНА заканчиваться на ":".
  • Если присутствует authority, он ДОЛЖЕН начинаться с "//".
  • Путь может быть объединен без разделителей. Но есть два случая, когда путь должен быть скорректирован, чтобы ссылка URI была действительной, поскольку PHP не позволяет вызывать исключение в __toString():
    • Если путь без корня и присутствует authority, путь ДОЛЖЕН начинаться с "/".
    • Если путь начинается с более чем одного "/" и authority отсутствует, начальные слеши ДОЛЖНЫ быть сведены к одному.
  • Если присутствует query, он ДОЛЖЕН начинаться с "?".
  • Если присутствует fragment, он ДОЛЖЕН начинаться с "#".

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

string

getAuthority() public

getAuthority(): string

Извлечь компонент authority URI.

Если информация об authority отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Синтаксис authority URI:

[user-info@]host[:port]

Если компонент порта не задан или является стандартным портом для текущей схемы, он НЕ ДОЛЖЕН включаться.

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

string

getBase() public

getBase(): string

Получить базовый путь приложения.

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

string

getFragment() public

getFragment(): string

Извлечь компонент fragment URI.

Если fragment отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Ведущий символ "#" не является частью fragment и НЕ ДОЛЖЕН добавляться.

Возвращаемое значение ДОЛЖНО быть процент-кодировано, но НЕ ДОЛЖНО быть двойным кодированием любых символов. Чтобы определить, какие символы кодировать, обратитесь к RFC 3986, разделы 2 и 3.5.

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

string

getHost() public

getHost(): string

Извлечь компонент host URI.

Если host отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Возвращаемое значение ДОЛЖНО быть нормализовано к нижнему регистру, согласно RFC 3986, раздел 3.2.2.

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

string

getPath() public

getPath(): string

Извлечь компонент path URI.

Путь может быть пустым, абсолютным (начинающимся со слеша) или без корня (не начинающимся со слеша). Реализации ДОЛЖНЫ поддерживать все три синтаксиса.

Обычно пустой путь "" и абсолютный путь "/" считаются равными, как определено в RFC 7230, раздел 2.7.3. Но этот метод НЕ ДОЛЖЕН автоматически выполнять эту нормализацию, поскольку в контекстах с усеченным базовым путем, например, в главном контроллере, это различие становится значительным. Пользователь должен обрабатывать как "" так и "/".

Возвращаемое значение ДОЛЖНО быть процент-кодировано, но НЕ ДОЛЖНО быть двойным кодированием любых символов. Чтобы определить, какие символы кодировать, обратитесь к RFC 3986, разделы 2 и 3.3.

Например, если значение должно включать слеш ("/"), не предназначенный в качестве разделителя между сегментами пути, это значение ДОЛЖНО быть передано в закодированной форме (например, "%2F") экземпляру.

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

string

getPort() public

getPort(): null|int

Извлечь компонент port URI.

Если порт присутствует и не является стандартным для текущей схемы, этот метод ДОЛЖЕН возвращать его как целое число. Если порт является стандартным портом, используемым с текущей схемой, этот метод ДОЛЖЕН возвращать null.

Если порт отсутствует и схема отсутствует, этот метод ДОЛЖЕН возвращать значение null.

Если порт отсутствует, но схема присутствует, этот метод МОЖЕТ возвращать стандартный порт для этой схемы, но ДОЛЖЕН возвращать null.

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

null|int

getQuery() public

getQuery(): string

Извлечь строку запроса URI.

Если строка запроса отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Ведущий символ "?" не является частью запроса и НЕ ДОЛЖЕН добавляться.

Возвращаемое значение ДОЛЖНО быть процент-кодировано, но НЕ ДОЛЖНО быть двойным кодированием любых символов. Чтобы определить, какие символы кодировать, обратитесь к RFC 3986, разделы 2 и 3.4.

Например, если значение в паре ключ/значение строки запроса должно включать амперсанд ("&"), не предназначенный в качестве разделителя между значениями, это значение ДОЛЖНО быть передано в закодированной форме (например, "%26") экземпляру.

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

string

getScheme() public

getScheme(): string

Извлечь компонент scheme URI.

Если схема отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Возвращаемое значение ДОЛЖНО быть нормализовано к нижнему регистру, согласно RFC 3986, раздел 3.1.

Завершающий символ ":" не является частью схемы и НЕ ДОЛЖЕН добавляться.

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

string

getUri() public

getUri(): Psr\Http\Message\UriInterface

Получить декорированный URI

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

Psr\Http\Message\UriInterface

getUserInfo() public

getUserInfo(): string

Извлечь компонент информации о пользователе URI.

Если информация о пользователе отсутствует, этот метод ДОЛЖЕН возвращать пустую строку.

Если пользователь присутствует в URI, это значение будет возвращено; кроме того, если также присутствует пароль, он будет добавлен к значению пользователя с двоеточием (":") в качестве разделителя значений.

Завершающий символ "@" не является частью информации о пользователе и НЕ ДОЛЖЕН добавляться.

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

string

getWebroot() public

getWebroot(): string

Получить путь к корневому каталогу веб-сервера приложения.

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

string

withFragment() public

withFragment(string $fragment): static

Возвращает экземпляр с указанным фрагментом URI.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанный фрагмент URI.

Пользователи могут указывать как закодированные, так и декодированные символы фрагмента. Реализации обеспечивают правильное кодирование, как описано в getFragment().

Пустое значение фрагмента эквивалентно удалению фрагмента.

Параметры

string $fragment

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

static

withHost() public

withHost(string $host): static

Возвращает экземпляр с указанным host.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанный host.

Пустое значение host эквивалентно удалению host.

Параметры

string $host

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

static

withPath() public

withPath(string $path): static

Возвращает экземпляр с указанным путем.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанный путь.

Путь может быть пустым, абсолютным (начинающимся со слеша) или без корня (не начинающимся со слеша). Реализации ДОЛЖНЫ поддерживать все три синтаксиса.

Если путь предназначен для относительного к домену, а не к пути, он должен начинаться со слеша ("/"). Пути, не начинающиеся со слеша ("/"), считаются относительными к некоторому базовому пути, известному приложению или потребителю.

Пользователи могут указывать как закодированные, так и декодированные символы пути. Реализации обеспечивают правильное кодирование, как описано в getPath().

Параметры

string $path

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

static

withPort() public

withPort(null|int $port): static

Возвращает экземпляр с указанным портом.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанный порт.

Реализации ДОЛЖНЫ вызывать исключение для портов за пределами установленных диапазонов портов TCP и UDP.

Значение null, предоставленное для порта, эквивалентно удалению информации о порте.

Параметры

null|int $port

Возвращает

static

withQuery() public

withQuery(string $query): static

Возвращает экземпляр с указанной строкой запроса.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанную строку запроса.

Пользователи могут предоставлять как закодированные, так и декодированные символы запроса. Реализации обеспечивают правильное кодирование, как указано в getQuery().

Пустая строка запроса эквивалентна удалению строки запроса.

Параметры

string $query

Возвращает

static

withScheme() public

withScheme(string $scheme): static

Возвращает экземпляр с указанной схемой.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанную схему.

Реализации ДОЛЖНЫ поддерживать схемы "http" и "https" без учёта регистра и МОГУТ учитывать другие схемы, если это необходимо.

Пустая схема эквивалентна удалению схемы.

Параметры

string $scheme

Возвращает

static

withUserInfo() public

withUserInfo(string $user, null|string $password = null): static

Возвращает экземпляр с указанной информацией о пользователе.

Этот метод ДОЛЖЕН сохранять состояние текущего экземпляра и возвращать экземпляр, содержащий указанную информацию о пользователе.

Пароль является необязательным, но информация о пользователе ДОЛЖНА включать пользователя; пустая строка для пользователя эквивалентна удалению информации о пользователе.

Параметры

string $user
null|string $password optional

Возвращает

static

© 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.4/class-Cake.Http.Uri.html

Spec-Zone.ru

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