Куки — это набор переменных, хранящихся в браузере пользователя. Отличный пример использования куки — авторизация на сайте. Пользователь вводит логин и пароль, авторизуется и переходит на другие страницы. Для поддержания авторизации без постоянной проверки логина и пароля, можно использовать куки. В них можно сохранить логин и пароль пользователя. Если они существуют, пользователь считается авторизованным. Куки сохраняются в браузере на определённый период, который можно указать. Даже если пользователь заходит на сайт через месяц, куки могут сохраняться и подтверждать авторизацию. В куки также можно хранить персональные настройки.
Реализация куки в PHP
Для работы с куки используется функция setcookie(). Она принимает два обязательных параметра и один необязательный, но часто используемый:
- Первый параметр: Название куки (например, ‘name’).
- Второй параметр: Значение куки (строка, булево значение, число и т.д.). Например, присвоим куки ‘name’ значение 10.
- Третий параметр: Время жизни куки в секундах (время, через которое куки удалится).
Установка куки происходит следующим образом: setcookie(‘name’, 10); Обновление страницы не покажет видимых изменений, но куки с именем ‘name’ и значением 10 установлено. Куки сохраняется до тех пор, пока не закончится сессия (закрытие страницы или браузера).
Для доступа к куки используется глобальная переменная $_COOKIE, которая представляет собой ассоциативный массив. Например, для получения значения куки ‘name’, используется $_COOKIE[‘name’].
<?php
echo $_COOKIE['name']; // Выведет 10
?>
Проверка существования и время жизни куки
Можно проверить, существует ли куки:
<?php
if (isset($_COOKIE['name'])) {
echo 'Кука установлена';
} else {
echo 'Кука не установлена';
}
?>
Третий параметр функции setcookie() позволяет задать время жизни куки. Например: setcookie(‘name’, 10, time() + 7); Через 7 секунд куки ‘name’ будет удалена.
Подсчёт обновлений страницы
Куки позволяют отслеживать действия пользователя, которые обычные переменные не запоминают при перезагрузке страницы. Например, можно посчитать, сколько раз пользователь обновил страницу:
<?php
$name = isset($_COOKIE['name']) ? $_COOKIE['name'] : 0;
$name++;
setcookie('name', $name, time() + 4);
echo 'Пользователь обновил страницу ' . $name . ' раз';
?>
В этом примере, если куки ‘name’ существует, её значение увеличивается на единицу; иначе, значение устанавливается в 1. Затем, куки устанавливается с новым значением и временем жизни 4 секунды.
Куки — это мощный инструмент для хранения данных в браузере пользователя. Они позволяют сохранять информацию между сессиями и отслеживать действия пользователя. Основные параметры куки: название, значение и время жизни. Понимание работы с куки необходимо для создания интерактивных веб-приложений.