Работа с PHP Cookie

cookie1-9917325

14 февраля 2020 PHP

С помощью куки можно хранить небольшую информацию в браузере пользователя. Для чего это нужно? Например для хранения переменных и проверки их значений. Это может быть переменная в которой записывается переключился ли пользователь на версию сайта для слабовидящих или какие-то данные, которые необходимы для авторизации. Куки хранятся все время, даже после закрытия браузера, если их не удалить или не установить время действия. С помощью PHP можно установить куки, изменить их, удалить и при необходимости указать время действия.

Установить куки

В примере ниже, запишем значение логина в куки login, и установим время действия 86400 сек., что равно 1 дню. Если не передать это значение, то куки буду удалены после закрытия браузера.

$login = 'admin';
setcookie('login', $login, time() + (86400));

Если куки установлены правильно, то их можно просмотреть в настройках файлов cookies. В браузере Google Chrome это можно сделать нажав на иконку слева от адресной строки, и выбрав текущий сайт.

cookie1-9917325

Получить и вывести куки

После того, как куки установлены их надо получить, и при необходимости вывести. Как это сделать рассмотрим в примере ниже:

$login = $_COOKIE['login'] ;
echo $login;

Удалить куки

Для удаления куки, нужно просто указать значение в прошедшем времени:

setcookie ("login", "", time() - 3600);

Массивы куки

Зададим массив куки name, и выведем его значения по одному:

setcookie("name[1]", "Иван");
setcookie("name[2]", "Пётр");
setcookie("name[3]", "Степан");

if (isset($_COOKIE['name'])) {
    foreach ($_COOKIE['name'] as $name => $value) {
        $name = htmlspecialchars($name);
        $value = htmlspecialchars($value);
        echo "$name. $value 
"; } }
  

Read More