Класс Cookie
Объект Cookie для создания куки и преобразования его в значение заголовка
HTTP-куки (также называемые веб-куки, интернет-куки, куки браузера или просто куки) — небольшой фрагмент данных, отправляемый веб-сайтом и сохраняемый на компьютере пользователя веб-браузером во время просмотра.
Куки были разработаны как надёжный механизм для запоминания состояния веб-сайтами (например, добавленных в корзину товаров в интернет-магазине) или для записи активности пользователя (включая нажатия на определённые кнопки, вход в систему или запись просмотренных страниц). Они также могут использоваться для запоминания произвольной информации, ранее введённой пользователем в поля форм, таких как имена и предпочтения.
Объекты Cookie неизменяемы, и вам необходимо повторно присваивать переменные при изменении объектов Cookie:
$cookie = $cookie->withValue('0'); - Cake\Http\Cookie\Cookie реализует Cake\Http\Cookie\CookieInterface
Ссылка: https://tools.ietf.org/html/rfc6265
Ссылка: https://en.wikipedia.org/wiki/HTTP_cookie
См.: Cake\Http\Cookie\CookieCollection для работы с коллекциями куки.
См.: Cake\Http\Response::getCookieCollection() для работы с куки ответа.
Расположение: Http/Cookie/Cookie.php
Унаследованные константы
Резюме свойств
-
$domainprotectedДоменstring -
$expiresAtprotectedВремя истечения срока действияDateTime|DateTimeImmutable|null -
$httpOnlyprotectedТолько HTTPboolean -
$isExpandedprotectedРасширен ли JSON-значение в массив.boolean -
$nameprotectedИмя кукиstring -
$pathprotectedПутьstring -
$secureprotectedЗащищённыйboolean -
$valueprotectedИсходное значение куки.string|array
Резюме методов
- __construct() publicКонструктор
- _expand() protected
Метод разбиения для возврата массива из строки, заданной в CookieComponent::_flatten() Сохраняет обратную совместимость с чтением 1.x CookieComponent::_flatten().
- _flatten() protectedМетод конкатенации для сохранения ключей в многомерных массивах
- _setValue() protectedУстановщик для атрибута значения.
- check() publicПроверяет, существует ли значение в данных куки.
- getDomain() publicПолучить атрибут домена.
- getExpiresTimestamp() publicПолучить временную метку из времени истечения срока действия
- getExpiry() publicПолучить текущее время истечения срока действия
- getFormattedExpires() publicСтроит часть значения времени истечения срока действия в строке заголовка
- getId() publicПолучить идентификатор куки
- getName() publicПолучить имя куки
- getPath() publicПолучить атрибут пути.
- getStringValue() publicПолучить значение куки в виде строки.
- getValue() publicПолучить значение куки
- isExpanded() publicПроверить, было ли значение куки расширено
- isExpired() publicПроверить, истекло ли время действия куки по сравнению с $time
- isHttpOnly() publicПроверить, является ли куки только HTTP
- isSecure() publicПроверить, является ли куки защищённым
- read() publicЧтение данных из куки
- toHeaderValue() publicВозвращает значение заголовка в виде строки
- validateBool() protectedПроверить, является ли аргумент булевым значением
- validateName() protectedПроверка имени куки
- validateString() protectedПроверка, является ли аргумент строкой
- withAddedValue() publicСоздать новую куки с обновлёнными данными.
- withDomain() publicСоздать куки с обновлённым доменом
- withExpired() publicСоздать новую куки, которая истечёт/удалит куки из браузера.
- withExpiry() publicСоздать куки с обновлённой датой истечения срока действия
- withHttpOnly() publicСоздать куки с обновлённым HTTP Only
- withName() publicУстанавливает имя куки
- withNeverExpire() publicСоздать новую куки, которая практически никогда не истечёт.
- withPath() publicСоздать новую куки с обновлённым путём
- withSecure() publicСоздать куки с обновлённым Secure
- withValue() publicСоздать куки с обновлённым значением.
- withoutAddedValue() publicСоздать новую куки без указанного пути
Подробное описание метода
__construct()исходный код public
__construct( string $name , string|array $value = '' , DateTime|DateTimeImmutable|null $expiresAt = null , string $path = '' , string $domain = '' , boolean $secure = false , boolean $httpOnly = false )
Конструктор
Аргументы конструктора аналогичны методу setcookie() языка PHP. Единственное отличие — третий аргумент, который принимает null или объект DateTime или DateTimeImmutable вместо целого числа.
Параметры
- строка
$name - Имя куки
- строка|массив
$valueнеобязательно '' - Значение куки
- DateTime|DateTimeImmutable|null
$expiresAtнеобязательно null - Время и дата истечения срока действия
- строка
$pathнеобязательно '' - Путь
- строка
$domainнеобязательно '' - Домен
- булево
$secureнеобязательно false - Защищённый
- булево
$httpOnlyнеобязательно false - Только HTTP
Ссылка
http://php.net/manual/en/function.setcookie.php_expand()source protected
_expand( string $string )
Метод расширения, возвращающий массив из строки, установленной в CookieComponent::_flatten(). Обеспечивает обратную совместимость со строкой 1.x CookieComponent::_flatten().
Параметры
- строка
$string - Строка, содержащая закодированные в JSON данные или просто строка.
Возвращает
строка|массивКарта ключей и значений
_flatten()source protected
_flatten( array $array )
Метод объединения для сохранения многомерных массивов ключей
Параметры
- массив
$array - Карта ключей и значений
Возвращает
строкаСтрока, закодированная в JSON.
_setValue()source protected
_setValue( mixed $value )
Установщик для атрибута значения.
Параметры
- смешанный
$value - Значение для хранения.
check()source public
check( string $path )
Проверяет, существует ли значение в данных cookie.
Этот метод будет расширять сериализованные сложные данные при первом использовании.
Параметры
- строка
$path - Путь для проверки
Возвращает
логическое значениеgetDomain()source public
getDomain( )
Получить атрибут домена.
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getDomain() getExpiresTimestamp()source public
getExpiresTimestamp( )
Получить метку времени из времени истечения срока действия
Возвращает
строка|nullВремя истечения срока действия в виде строковой метки времени.
Реализация
Cake\Http\Cookie\CookieInterface::getExpiresTimestamp() getExpiry()source public
getExpiry( )
Получить текущее время истечения срока действия
Возвращает
DateTime|DateTimeImmutable|nullМетка времени истечения срока действия или null
Реализация
Cake\Http\Cookie\CookieInterface::getExpiry() getFormattedExpires()source public
getFormattedExpires( )
Создает часть значения атрибута истечения срока действия строки заголовка
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getFormattedExpires() getId()source public
getId( )
Получить идентификатор для cookie
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getId() getName()source public
getName( )
Получение имени cookie
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getName() getPath()source public
getPath( )
Получение атрибута пути.
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getPath() getStringValue()source public
getStringValue( )
Получение значения cookie в виде строки.
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::getStringValue() getValue()source public
getValue( )
Получение значения cookie
Возвращает
строка|массивРеализация
Cake\Http\Cookie\CookieInterface::getValue() isExpanded()source public
isExpanded( )
Проверка, было ли значение cookie расширено
Возвращает
логическое значениеisExpired()source public
isExpired( DateTime|DateTimeImmutable $time = null )
Проверка, истек ли срок действия cookie по сравнению со значением $time
Параметры
- DateTime|DateTimeImmutable
$timeнеобязательный null - Время для сравнения. По умолчанию - текущее время в UTC.
Возвращает
логическое значениеРеализация
Cake\Http\Cookie\CookieInterface::isExpired() isHttpOnly()source public
isHttpOnly( )
Проверка, является ли cookie только HTTP.
Возвращает
логическое значениеРеализация
Cake\Http\Cookie\CookieInterface::isHttpOnly() isSecure()source public
isSecure( )
Проверка, является ли cookie безопасным.
Возвращает
логическое значениеРеализация
Cake\Http\Cookie\CookieInterface::isSecure() read()source public
read( string $path = null )
Чтение данных из cookie
Этот метод будет расширять сериализованные сложные данные при первом использовании.
Параметры
- строка
$pathнеобязательный null - Путь для чтения данных
Возвращает
смешанныйtoHeaderValue()source public
toHeaderValue( )
Возвращает значение заголовка в виде строки
Возвращает
строкаРеализация
Cake\Http\Cookie\CookieInterface::toHeaderValue() validateBool()source protected
validateBool( boolean $value )
Проверка, что аргумент является булевым значением
Параметры
- логическое значение
$value - Значение для проверки.
Выбрасывает
InvalidArgumentExceptionvalidateName()source protected
validateName( string $name )
Проверка имени cookie
Параметры
- строка
$name - Имя cookie
Выбрасывает
InvalidArgumentExceptionСсылка
Правила именования cookie.validateString()source protected
validateString( string $value )
Проверка, что аргумент является строкой
Параметры
- строка
$value - Значение для проверки.
Выбрасывает
InvalidArgumentExceptionwithAddedValue()source public
withAddedValue( string $path , mixed $value )
Создание нового cookie с обновленными данными.
Параметры
- строка
$path - Путь для записи
- смешанный
$value - Значение для записи
Возвращает
Cake\Http\Cookie\CookiewithDomain()source public
withDomain( string $domain )
Создать куки с обновлённым доменным именем
Параметры
- строка
$domain - Устанавливаемый домен
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withDomain() withExpired()source public
withExpired( )
Создать новую куки, которая истечёт/удалится из браузера.
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withExpired() withExpiry()source public
withExpiry( DateTime|DateTimeImmutable $dateTime )
Создать куки с обновлённой датой истечения
Параметры
- DateTime|DateTimeImmutable
$dateTime - Объект даты и времени
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withExpiry() withHttpOnly()source public
withHttpOnly( boolean $httpOnly )
Создать куки с обновлённым значением HTTP Only
Параметры
- boolean
$httpOnly - HTTP Only
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withHttpOnly() withName()source public
withName( string $name )
Устанавливает имя куки
Параметры
- строка
$name - Имя куки
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withName() withNeverExpire()source public
withNeverExpire( )
Создать новую куки, которая практически никогда не истечёт.
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withNeverExpire() withPath()source public
withPath( string $path )
Создать новую куки с обновлённым путём
Параметры
- строка
$path - Устанавливает путь
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withPath() withSecure()source public
withSecure( boolean $secure )
Создать куки с обновлённым значением Secure
Параметры
- boolean
$secure - Значение атрибута Secure
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withSecure() withValue()source public
withValue( string|array $value )
Создать куки с обновлённым значением.
Параметры
- строка|массив
$value - Устанавливаемое значение куки
Возвращаемое значение
Cake\Http\Cookie\CookieРеализация
Cake\Http\Cookie\CookieInterface::withValue() withoutAddedValue()source public
withoutAddedValue( string $path )
Создать новую куки без определённого пути
Параметры
- строка
$path - Путь для удаления
Возвращаемое значение
Cake\Http\Cookie\CookieПодробное описание свойств
© 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.Http.Cookie.Cookie.html