Files
freeCodeCamp/guide/russian/php/php-cookies/index.md
2018-10-16 21:32:40 +05:30

110 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: PHP Cookies
localeTitle: PHP-файлы cookie
---
# PHP-куки
## Что такое Cookie?
Файл cookie часто используется для идентификации пользователя. Это небольшой файл, который сервер встраивает в компьютер пользователя. Каждый раз, когда тот же компьютер запрашивает страницу с браузером, он отправляет cookie тоже.
Куки-файлы были разработаны, чтобы быть надежным механизмом для сохранения информации о состоянии или записи активности пользователя.
Они также могут использоваться для запоминания произвольной информации, которую пользователь ранее вводил в поля формы, такие как имена, адреса, пароли и т. Д.
## Создание файлов cookie с PHP
С помощью PHP вы можете создавать и извлекать значения файлов cookie. Файл cookie создается с помощью функции setcookie ().
`setcookie(name, value, expire, path, domain, secure, httponly);`
Обязательным параметром является только параметр _name_ . Все остальные параметры являются необязательными.
## PHP Создание / извлечение файлов cookie
В следующем примере создается файл cookie с именем «user» со значением «John Doe».
Срок действия файла cookie истекает через 30 дней (86400 \* 30).
«/» Означает, что файл cookie доступен на весь сайт (иначе вы можете выбрать нужный каталог).
Затем мы извлекаем значение cookie «user» (используя глобальную переменную $ \_COOKIE).
Мы также используем функцию isset (), чтобы выяснить, установлен ли файл cookie:
**Пример:**
```
<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
```
**Примечание.** Функция setcookie () должна отображаться **перед** тег.
Вывод:
Cookie 'user' установлен!
Значение: John Doe
## PHP Изменить значение cookie
Чтобы изменить файл cookie, просто установите значение снова с помощью функции setcookie ():
**Пример:**
```
<?php
$cookie_name = "user";
$cookie_value = "Jane Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
```
Вывод:
Cookie 'user' установлен!
Значение: Алекс Портер
## PHP Удалить файл cookie
Чтобы удалить файл cookie, используйте функцию setcookie () с датой истечения в прошлом:
**Пример:**
```
<?php
// set the expiration date to one hour ago
setcookie("user", "", time() - 3600);
?>
<html>
<body>
<?php
echo "Cookie 'user' is deleted.";
?>
</body>
</html>
```
Вывод:
Пользователь cookie пользователя cookie удален.