php cookie存中文乱码,如何解决php cookies乱码问题

php cookies乱码的解决办法:首先在写入Cookie时,将其用Url编码;然后重新写入Cookie;最后在读取时进行Url解码即可。

7e5ee47adf3cc1bb335ece0e83f28e48.png

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑

php与js互传cookie时中文乱码的问题

js存储cookie,php读取的时候成了乱码 。

问题分析:

这是因为文字编码而造成的,汉字是两个编码,所以才会搞出这么个乱码出来!

解决思路:

1:写入Cookie时,先将其用Url编码,然后再写入

2:当我们读取时再Url解码即可

php两个函数

urlencode()

urldecode()

js两个函数

decodeURI()

encodeURI()

php 设置cookie ,js读取cookie<?php

setcookie ("TestCookie", urlencode("这就是网页21"));

?>

alert(decodeURI(getCookie("TestCookie")))

function getCookie(sName) {

var aCookie = document.cookie.split('; ');

for (var i=0; i < aCookie.length; i++) {

var aCrumb = aCookie[i].split('=');

if (sName == aCrumb[0])

return decodeURI(aCrumb[1]);

}

return '';

}

js设置cookie php读取cookie

var nameString = name + '=' + encodeURI(value);

var expiryString = "";

if(time !== 0) {

var expdate = new Date();

if(time == null || isNaN(time)) time = 60*60*1000;

expdate.setTime(expdate.getTime() + time);

expiryString = ' ;expires = '+ expdate.toGMTString();

}

var path = " ;path =/";

document.cookie = nameString + expiryString + path;

}setCookie("TestJsCookie", "我是中国人", 0) <?php

echo urldecode($_COOKIE["TestJsCookie"]);

?>

推荐学习:《PHP视频教程》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值