Cookies
Cookies — данные, которые хранятся в браузере посетителя сайта (в виде текста).
Cookies можно использовать, например, чтобы запоминать, какую страницу пользователь уже посетил, и при повторном посещении страницы показывать пользователю «страница уже просмотрена».
Создаются cookies через функцию setcookie()
.
// создание cookie
setcookie("cookie_name", "Сохранённая информация", strtotime('+1 hours'));
Все cookies доступны через массив $_COOKIE
. Например, cookie, созданный выше, можно вывести через следующий код:
echo $_COOKIE['cookie_name']; // Сохранённая информация
Третий параметр функции setcookie()
указывает время хранения cookies. В примере выше указано время хранения в 1 час.
Cookies передаются клиенту вместе с HTTP заголовками, поэтому cookies должны быть определены до вывода HTML.
Нельзя создать cookies и тут же их использовать. Вывести cookies можно будет с обновлением страницы.
Cookie сохраняются в браузере в url-закодированном виде, а при выводе декодируются в обычную строку.
setcookie("site", "https://know-online.com/"); // хранится как https%3A%2F%2Fknow-online.com%2F
echo $_COOKIE['site']; // https://know-online.com/
Страницы, на которых будут доступны cookie
Страницы, на которых будут доступны cookie указываются через четвёртый параметр. По умолчанию cookies сохраняется для текущего URL.
// Сохранение cookies для всех страниц
setcookie("name", "Сохранённая информация", time() + 3600, '/');
// Сохранение cookies для раздела "catalog/"
setcookie("name", "Сохранённая информация", time() + 3600, '/catalog/');
// Сохранение cookies для указанной страницы
setcookie("name", "Сохранённая информация", time() + 3600, '/about.html');
Удаление cookies
Чтобы удалить cookies, надо для текущей cookies задать время хранения в прошедшем времени. Например, код ниже устанавливает cookies на час назад, т.е. удаляет его, т.к. истекло время хранения.
// Пример удаления cookies
setcookie("name", "Сохранённая информация", time() - 3600);
Обновление cookies
Cookies обновляются также, как и создаются, только устанавливается новое значение.
// Создание cookies
setcookie("name", "Сохранённая информация", time() + 3600);
// Обновление cookies
setcookie("name", "Новое значение", time() + 3600);
Поддержать автора
Все статьи создаются и поддерживаются одним человеком,
если вам нравится контент, вы можете поддержать автора сайта