Обучаясь концепцию Cookies в PHP, я наткнулся на следующее заявление от w3schools PHP Tutorial:Что означает «значение файла cookie автоматически URL-код при отправке файла cookie и автоматически декодируется при его получении» означает?
Значение куки автоматически URLencoded при отправке куки, и автоматически декодируется при получении (для предотвращения URLencoding, вместо этого используйте
setrawcookie()
)
Я не понял значения этого утверждения. У меня есть следующие сомнения в отношении вышеуказанного заявления:
- Откуда отправляется куки, кому и где будет получен печенье?
- Что на самом деле происходит с помощью «Значение файла cookie автоматически URL-адрес при отправке файла cookie и автоматически декодируется при получении»?
- Какую роль играет
setrawcookie()
? Я имею в виду, что он на самом деле делает?
Ниже приводится код, который я пытался для понимания концепции печенья:
<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
<?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];
}
ли кто-то пожалуйста, очистить мои запросы со ссылкой на приведенный выше код?
Но могут ли эти URLencode и URLdecode вступать в игру всегда или только тогда, когда значение cookie содержит в себе какой-либо специальный символ? – user2839497
... если символов нет, чем требуется urlencoding или urldecoding, это не имеет значения. Вы можете запустить 'urlencode ('abc');' ad infinitum, и вы всегда получите '' abc''. – yivi