Warm tip: This article is reproduced from serverfault.com, please click

wordpress-如何在PHP的Cookie值中发送正确的翻译

(wordpress - How to send correct translation in cookie value in php)

发布于 2020-11-30 15:38:23

我有一个基本的cookie,它会错误地编码(或错误地解码)URL字符。

该cookie将被设置,但是该值编码不正确。cookie的值必须是:https://mywebsite.com,但是一旦我设置cookie,它显示的值:HTTPS%3A%2F%2Fmywebsite.com,所以cookie不工作。

所有其他变量均正常工作,但我无法获得编码以编写https://

Cookie在php(wordpress)中。

代码是:

<?php

//Cookie
$cookie_name = "cookie";
$cookie_value = "https://mywebsite.com";
setcookie($cookie_name, $cookie_value, time() + (86400), "/", ".mywebsite.com", TRUE); 
//end cookie

?>

我曾尝试添加urldecode($cookie_name);urldecode($cookie_value);但均无济于事。

Questioner
RigelVII
Viewed
11
GrumbleShark 2020-12-01 00:35:22

你应该看看setrawcookie

setrawcookie —发送一个cookie,但不对cookie值进行未编码

setrawcookie()与setcookie()完全相同,不同之处在于,当cookie值发送到浏览器时不会自动对其进行urlencoded。

你的代码看起来像

<?php

//Cookie
$cookie_name = "cookie";
$cookie_value = "https://mywebsite.com";
setrawcookie($cookie_name, $cookie_value, time() + (86400), "/", ".mywebsite.com", TRUE); 
//end cookie

?>