ЛУЧШИЙ САЙТ ДЛЯ РАЗРАБОТЧИКОВ
×

PHP учебник

PHP HOME PHP Intro PHP Install PHP Syntax PHP Variables PHP Echo / Print PHP Data Types PHP Strings PHP Constants PHP Operators PHP If...Else...Elseif PHP Switch PHP While Loops PHP For Loops PHP Functions PHP Arrays PHP Sorting Arrays PHP Superglobals

PHP Forms

PHP Form Handling PHP Form Validation PHP Form Required PHP Form URL/E-mail PHP Form Complete

PHP Advanced

PHP Arrays Multi PHP Date and Time PHP Include PHP File Handling PHP File Open/Read PHP File Create/Write PHP File Upload PHP Cookies PHP Sessions PHP Filters PHP Filters Advanced PHP Error Handling PHP Exception

MySQL Database

MySQL Database MySQL Connect MySQL Create DB MySQL Create Table MySQL Insert Data MySQL Get Last ID MySQL Insert Multiple MySQL Prepared MySQL Select Data MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP - XML

PHP XML Parsers PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Intro AJAX PHP AJAX Database AJAX XML AJAX Live Search AJAX RSS Reader AJAX Poll

PHP Examples


PHP Reference

PHP Overview PHP Array PHP Calendar PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones


PHP 5 Cookies


Файл cookie часто используется для идентификации пользователя.


Что такое куки?

Файл cookie часто используется для идентификации пользователя. Файл cookie является небольшим файлом, который сервер внедряет на компьютере пользователя. Каждый раз, когда один и тот же компьютер запрашивает страницу с браузером, он также будет отправлять файл cookie. С помощью PHP можно создавать и извлекать значения файлов cookie.


Создание файлов cookie с помощью PHP

Создается файл cookie с setcookie() функцией.

Синтаксис

setcookie(name, value, expire, path, domain, secure, httponly);

Требуется только параметр Name . Все остальные параметры являются необязательными.


PHP создание/извлечение куки

В следующем примере создается файл cookie с именем "User" со значением "John Doe". Срок действия куки-файла истекает через 30 дней (86400 * 30). "/" означает, что файл Cookie доступен на всем веб-сайте (в противном случае выберите каталог, который вы предпочитаете).

Затем мы извлекаем значение cookie "User" (используя глобальную переменную $ _кукие). Мы также используем 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()функция должна появиться перед тегом < HTML >.

Примечание: Значение файла cookie автоматически URLencoded при отправке файла cookie и автоматически декодировано при получении (для предотвращения урленкодинг, используйте setrawcookie() вместо).



Изменение значения файла cookie

Чтобы изменить куки, просто установите (снова) куки с помощью setcookie() функции:

Пример

<?php
$cookie_name = "user";
$cookie_value = "Alex 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

Чтобы удалить файл 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. Сначала попытайтесь создать тестовый файл cookie с setcookie() функцией, а затем подсчитайте переменную $ _кукие Array:

Пример

<?php
setcookie("test_cookie", "test", time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
    echo "Cookies are enabled.";
} else {
    echo "Cookies are disabled.";
}
?>

</body>
</html>

Полная HTTP-ссылка на PHP

Для полной ссылки на функции HTTP, перейдите на наш полный Http-ссылка на PHP.