Класс CookieCollection
Коллекция куки
Обеспечивает неизменяемую коллекцию объектов cookie. Добавление или удаление в коллекцию возвращает новую коллекцию, которую вы должны сохранить.
- Cake\Http\Cookie\CookieCollection реализует IteratorAggregate, Countable
Прямые подклассы
Краткое описание свойств
- Объекты Cookie
$cookiesprotected
Краткое описание методов
- __construct() publicКонструктор
- add() publicДобавить куки и получить обновлённую коллекцию.
- addFromResponse() publicСоздать новую коллекцию, которая включает куки из ответа.
- addToRequest() publicДобавить куки, которые соответствуют пути/домену/сроку действия, в запрос.
- checkCookies() protectedПроверяет, содержатся ли в массиве только допустимые объекты cookie
- count() publicПолучить количество куки в коллекции.
- Создать коллекцию Cookie из массива заголовков Set-Cookie
- Создать новую коллекцию из куки в ServerRequest
- findMatchingCookies() protectedНайти куки, соответствующие схеме, хосту и пути
- get() publicПолучить первую куки по имени.
- getIterator() publicПолучить итератор
- has() publicПроверить, существует ли куки с заданным именем
- Разбор заголовков Set-Cookie в массив
- remove() publicСоздать новую коллекцию со всеми куки, соответствующими $name, удалёнными.
- removeExpiredCookies() protectedУдалить просроченные куки из коллекции.
- setRequestDefaults() protectedПрименить путь и хост к набору куки, если они не заданы.
Подробное описание методов
__construct()source public
__construct( array $cookies [] )
Конструктор
Параметры
- массив
$cookiesнеобязательно [] - Массив объектов cookie
add()source public
add( Cake\Http\Cookie\CookieInterface $cookie )
Добавить куки и получить обновлённую коллекцию.
Куки хранятся по id. Это означает, что могут быть дублированные куки, если коллекция куки используется для куки на нескольких доменах. Это может повлиять на поведение get(), has() и remove().
Параметры
-
Cake\Http\Cookie\CookieInterface$cookie - Экземпляр Cookie для добавления.
Возвращает
Cake\Http\Cookie\CookieCollectionaddFromResponse()source public
addFromResponse( Psr\Http\Message\ResponseInterface $response , Psr\Http\Message\RequestInterface $request )
Создать новую коллекцию, которая включает куки из ответа.
Параметры
- Psr\Http\Message\ResponseInterface
$response - Ответ для извлечения куки.
- Psr\Http\Message\RequestInterface
$request - Запрос для получения контекста cookie.
Возвращает
Cake\Http\Cookie\CookieCollectionaddToRequest()source public
addToRequest( Psr\Http\Message\RequestInterface $request , array $extraCookies [] )
Добавить куки, которые соответствуют пути/домену/сроку действия, в запрос.
Это позволяет CookieCollections использоваться в качестве «хранилища куки» в ситуации HTTP-клиента. Куки, которые соответствуют домену и пути запроса и не истекли к моменту вызова этого метода, будут применены к запросу.
Параметры
- Psr\Http\Message\RequestInterface
$request - Запрос для обновления.
- массив
$extraCookiesнеобязательно [] Ассоциативный массив дополнительных куки для добавления в запрос. Это полезно, когда у вас есть данные о куки извне коллекции, которые вы хотите отправить.
Возвращает
Psr\Http\Message\RequestInterfaceОбновлённый запрос.
checkCookies()source protected
checkCookies( array $cookies )
Проверяет, содержатся ли в массиве только допустимые объекты cookie
Параметры
- массив
$cookies - Массив объектов cookie
Вызывает исключение
InvalidArgumentExceptioncount()source public
count( )
Получить количество куки в коллекции.
Возвращает
целое числоРеализация
Countable::count() createFromHeader()source public static
createFromHeader( array $header )
Создать коллекцию Cookie из массива заголовков Set-Cookie
Параметры
- массив
$header - Массив значений заголовка set-cookie.
Возвращает
Cake\Http\Cookie\CookieCollectioncreateFromServerRequest()source public static
createFromServerRequest( Psr\Http\Message\ServerRequestInterface $request )
Создать новую коллекцию из куки в ServerRequest
Параметры
- Psr\Http\Message\ServerRequestInterface
$request - Запрос для извлечения данных о куки
Возвращает
Cake\Http\Cookie\CookieCollectionfindMatchingCookies()source protected
findMatchingCookies( string $scheme , string $host , string $path )
Найти куки, соответствующие схеме, хосту и пути
Параметры
- строка
$scheme - Соответствующая схема http
- строка
$host - Соответствующий хост.
- строка
$path - Соответствующий путь
Возвращает
массивМассив пар имя/значение cookie
get()source public
get( string $name )
Получить первую куки по имени.
Параметры
- строка
$name - Имя куки.
Возвращает
Cake\Http\Cookie\CookieInterface|nullgetIterator()source public
getIterator( )
Получить итератор
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() has()source public
has( string $name )
Проверить, существует ли cookie с заданным именем
Параметры
- строка
$name - Имя cookie для проверки.
Возвращает
booleanTrue, если cookie существует, в противном случае false.
parseSetCookieHeader()source protected static
parseSetCookieHeader( array $values )
Парсинг заголовков Set-Cookie в массив
Параметры
- массив
$values - Список значений заголовков Set-Cookie.
Возвращает
Cake\Http\Cookie\Cookie[]Массив объектов cookie
remove()source public
remove( string $name )
Создать новую коллекцию со всеми cookie, соответствующими $name, удалёнными.
Если cookie отсутствует в коллекции, этот метод ничего не сделает.
Параметры
- строка
$name - Имя cookie для удаления.
Возвращает
Cake\Http\Cookie\CookieCollectionremoveExpiredCookies()source protected
removeExpiredCookies( string $host , string $path )
Удаление просроченных cookie из коллекции.
Параметры
- строка
$host - Хост для проверки просроченных cookie.
- строка
$path - Путь для проверки просроченных cookie.
setRequestDefaults()source protected
setRequestDefaults( array $cookies , string $host , string $path )
Применение пути и хоста к набору cookie, если они не заданы.
Параметры
- массив
$cookies - Массив cookie для обновления.
- строка
$host - Хост для установки.
- строка
$path - Путь для установки.
Возвращает
массивМассив обновлённых cookie.
Подробное описание свойств
© 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.Http.Cookie.CookieCollection.html