Класс CookieCollection
Коллекция куки
Обеспечивает неизменяемую коллекцию объектов cookie. Добавление или удаление в коллекцию возвращает новую коллекцию, которую вы должны сохранить.
Краткое описание свойств
- $cookies protected
Cake\Http\Cookie\CookieInterface[]Объекты cookie
Краткое описание методов
-
__construct() public
Конструктор
-
add() public
Добавить куки и получить обновлённую коллекцию.
-
addFromResponse() public
Создать новую коллекцию, включающую куки из ответа.
-
addToRequest() public
Добавить куки, соответствующие пути/домену/сроку действия, в запрос.
-
checkCookies() protected
Проверяет, что в массиве находятся только допустимые объекты куки.
-
count() public
Получить количество куки в коллекции.
-
createFromHeader() public static
Создать коллекцию куки из массива заголовков Set-Cookie.
-
createFromServerRequest() public static
Создать новую коллекцию из куки в ServerRequest.
-
findMatchingCookies() protected
Найти куки, соответствующие схеме, хосту и пути.
-
get() public
Получить первый куки по имени.
-
getIterator() public
Получить итератор.
-
has() public
Проверить, существует ли куки с данным именем.
-
remove() public
Создать новую коллекцию, удалив все куки, соответствующие $name.
-
removeExpiredCookies() protected
Удалить просроченные куки из коллекции.
Подробное описание методов
__construct() public
__construct(Cake\Http\Cookie\CookieInterface[] $cookies = [])
Конструктор
Параметры
-
Cake\Http\Cookie\CookieInterface[]$cookies optional Массив объектов куки
add() public
add(Cake\Http\Cookie\CookieInterface $cookie): static
Добавить куки и получить обновлённую коллекцию.
Куки хранятся по id. Это означает, что могут быть дублирующиеся куки, если коллекция куки используется для куки на нескольких доменах. Это может повлиять на поведение get(), has() и remove().
Параметры
-
Cake\Http\Cookie\CookieInterface$cookie Экземпляр куки для добавления.
Возвращает
staticaddFromResponse() public
addFromResponse(Psr\Http\Message\ResponseInterface $response, Psr\Http\Message\RequestInterface $request): static
Создать новую коллекцию, включающую куки из ответа.
Параметры
-
Psr\Http\Message\ResponseInterface$response Ответ для извлечения куки.
-
Psr\Http\Message\RequestInterface$request Запрос для получения контекста куки.
Возвращает
staticaddToRequest() public
addToRequest(Psr\Http\Message\RequestInterface $request, array $extraCookies = []): Psr\Http\Message\RequestInterface
Добавить куки, соответствующие пути/домену/сроку действия, в запрос.
Это позволяет использовать CookieCollections как «банку куки» в ситуациях с HTTP-клиентом. Куки, соответствующие домену + пути запроса, которые не просрочены при вызове этого метода, будут применены к запросу.
Параметры
-
Psr\Http\Message\RequestInterface$request Запрос для обновления.
-
array$extraCookies optional Ассоциативный массив дополнительных куки для добавления в запрос. Это полезно, когда у вас есть данные куки извне коллекции, которые вы хотите отправить.
Возвращает
Psr\Http\Message\RequestInterfacecheckCookies() protected
checkCookies(Cake\Http\Cookie\CookieInterface[] $cookies): void
Проверяет, что в массиве находятся только допустимые объекты куки.
Параметры
-
Cake\Http\Cookie\CookieInterface[]$cookies Массив объектов куки
Возвращает
voidВызывает исключение
InvalidArgumentExceptioncount() public
count(): int
Получить количество куки в коллекции.
Возвращает
intcreateFromHeader() public static
createFromHeader(array $header, array $defaults = []): static
Создать коллекцию куки из массива заголовков Set-Cookie.
Параметры
-
array$header Массив значений заголовков set-cookie.
-
array$defaults optional Атрибуты по умолчанию.
Возвращает
staticcreateFromServerRequest() public static
createFromServerRequest(Psr\Http\Message\ServerRequestInterface $request): static
Создать новую коллекцию из куки в ServerRequest.
Параметры
-
Psr\Http\Message\ServerRequestInterface$request Запрос для извлечения данных куки
Возвращает
staticfindMatchingCookies() protected
findMatchingCookies(string $scheme, string $host, string $path): array
Найти куки, соответствующие схеме, хосту и пути.
Параметры
-
string$scheme Схема http для сопоставления.
-
string$host Хост для сопоставления.
-
string$path Путь для сопоставления.
Возвращает
arrayget() public
get(string $name): Cake\Http\Cookie\CookieInterface
Получить первый куки по имени.
Параметры
-
string$name Имя куки.
Возвращает
Cake\Http\Cookie\CookieInterfaceВызывает исключение
InvalidArgumentExceptionЕсли куки не найдено.
getIterator() public
getIterator(): Cake\Http\Cookie\CookieInterface[]
Получить итератор.
Возвращает
Cake\Http\Cookie\CookieInterface[]has() public
has(string $name): bool
Проверить, существует ли куки с данным именем.
Параметры
-
string$name Имя куки для проверки.
Возвращает
boolremove() public
remove(string $name): static
Создать новую коллекцию, удалив все куки, соответствующие $name.
Если куки отсутствует в коллекции, этот метод ничего не сделает.
Параметры
-
string$name Имя куки для удаления.
Возвращает
staticremoveExpiredCookies() protected
removeExpiredCookies(string $host, string $path): void
Удалить просроченные куки из коллекции.
Параметры
-
string$host Хост для проверки просроченных куки.
-
string$path Путь для проверки просроченных куки.
Возвращает
voidПодробности свойства
$cookies защищенное
Объекты cookie
Тип
Cake\Http\Cookie\CookieInterface[]
© 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.2/class-Cake.Http.Cookie.CookieCollection.html