Куки в PHP (setcookie, $_COOKIE)

Если сессионный данные хранятся довольно ограниченное время, то куки (в переводе "печеньки") могут храниться годами. Хранятся куки в браузере пользователя. К сожалению, в каждой куке можно хранить только до 4 килобайта информации, а количество кук ограничено.

Создание кук и работа с ними

В PHP куки создаются и изменяются с помощью функции setcookie. Она принимает три параметра: название куки, значение, время окончания действия (секунды после которых, кука станет недействительной). Приведём пример записи в куки:
<?php 
   setcookie('story', 'Тише, мыши, кот на крыше', time() + 3600);
?>
Попробуйте выполнить такой код. И в браузере будет созданы куки с ключом 'story' и значением 'Тише, мыши, кот на крыше' и временем жизни, которое заканчивается через час (через 3600 секунд). Через час информация о куки будет удалена.

Для получения значения куки, необходимо обратиться к массиву $_COOKIE. Он содержит элементы, ключи которых являются ключами кук. Чтобы вывести значение из предыдущего примера, необходимо выполнить следующий код:
<?php 
   echo $_COOKIE['story'];
?>
Нельзя записать значение куки и получить это значение на одном хите, на одной загрузке страницы. После установки значения куки, необходимо перезагрузить страницу, чтобы можно было считать его.
Вы можете редактировать куки прямо в браузере, с помощью средств разработчика. Читайте подробнее об этом в статье "Редактор cookie в вашем браузере".

Удаление куки

Чтобы удалить куки, необходимо задать им значение времени жизни равное текущей секунде или раньше. Тогда браузер автоматически удалит куки. Продемонстрируем это:
<?php 
   setcookie('story', '', time());
?>
В этом примере мы заодно установили пустую строку в значение куки с ключом 'story'.
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, покупка SSL сертификатов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Была ли эта статья полезна? Есть вопрос?
Cмотрите другие статьи: