保存cookie数据,字符串语言不是英语
Save cookie data,string language not in English
我发现如果我通过JS保存cookie,函数如下:(w3c学校示例)
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()+"; path=/project/");
document.cookie = c_name + "=" + c_value;
}
我使用setCookie("你好"你好",30)保存cookie并使用php代码对其进行响应:
<?php
echo $_COOKIE['hello'];
?>
它将输出"%u4F60%u597D"。不是"你好".
所以我在setCookie函数中交换编码方式如下:
function encode_setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
//use encodeURIComponent encode string and decodeURIComponent decode it.
var c_value=encodeURIComponent(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()+"; path=/project/");
document.cookie = c_name + "=" + c_value;
}
并再次使用php echo。它将输出"你好"正如我想从cookie中读取的。
我通过PHP代码尝试这个保存cookie,并通过JS读取它。它也运行良好。
或者encodeURIComponent/decodeURIComponent就足够在PHP和JS中保存和读取cookie了。
这是关于字符串保存在cookie中的问题,不是英语问题,谢谢。
有更好的解决方案吗?
我找到了解决办法。
jQuery cookie
这是一个编码问题。阅读本页了解unicode简介:http://www.joelonsoftware.com/articles/Unicode.html
相关文章:
- 防止Alt+Shift默认操作或检测多种操作系统语言的Javascript
- Express服务器中语言子域的最佳实践
- 我想在Javascript中探索类似C语言的字符串的整个字符
- 我们可以使用任意的编程语言来动态化HTML页面吗
- 下载所选语言的pdf文件
- keith wood日期选择器日期格式和语言
- 为现有Roslyn语言lexer/parser选择基于javascript的代码编辑器
- 保存cookie数据,字符串语言不是英语
- 如何将谷歌自动完成表单的语言设置为英语
- 当区域设置设置为另一种语言时,如何从 momentjs 对象获取英语值
- 如何将应用程序的数据输入语言限制为英语(或拉丁字母)
- 强制将输入元素的语言切换为英语
- 将JSreport与其他语言(非英语)一起使用
- 当我选择英语以外的任何其他语言时,无法在ckeditor中键入任何语言,只显示英文字母
- JQuery验证不能在非英语语言环境中工作
- Keyup()事件不能在除英语以外的其他语言上运行
- 如何在语言指定为法语的Django应用程序中强制使用英语十进制格式
- 如何在rails表单中填写数据时在英语和其他语言之间切换
- 当用户语言从英语更改为希伯来语时,如何更改字体族
- 我想在母版页上有一个西班牙语/英语链接,它会带你到另一种语言的当前页面,而不是'home'页