php设置的中文cookiejs获取乱码解决办法

作者:袖梨 2022-06-25

php两个函数 urlencode  urldecode
 
js两个函数 decodeURI  encodeURI  5.5以前的版本是已经废弃的 escape   unescape 
 
简单示例如下:
 
1、php 设置cookie ,js读取cookie
 
setcookie ("username", urlencode("中文测试"));
?>
 

 
2、js设置cookie php读取cookie
 

 
echo urldecode($_COOKIE["username"]);
 
?>
 
 
 
3 js设置js读取 php设置php读取方法类似


 function SetCookie(name, value) {
        var exp = new Date();
        exp.setTime(exp.getTime() + 3 * 24 * 60 * 60 * 1000); //3天过期
        document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
        return true;
    };
    function getCookie(name) {
        var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
        if (arr != null) return arr[2]; return null;
    };

 


 var currentServiceAliasName = getCookie("appName");
        var displayName = "";
        if (currentServiceAliasName != null && currentServiceAliasName != "" && currentServiceAliasName != "undefined")
            displayName = decodeURIComponent(currentServiceAliasName) + " . " + counterName;
        else
        displayName = counterName;

decodeURIComponent 用这个转换一下


总结:cookie解决中文乱码问题实质上是就url编码函数之间的转换,小编总结了一下其实小编觉得cookie最好不要使用中文了,中文在这些地方处理不够用了。

相关文章

精彩推荐