功夫码

PHP如何读取由js置的Cookie的代码

晓峰 时间:2020-10-20 11:10:50 阅读:59
--------------------------------------------------------- Ta 只分享的内容开始 ---------------------------------------------------------------------

PHP如何读取由js置的Cookie

<?php
// 读取JavaScript设置的cookie
header("Content-type: text/html; charset=utf-8");
if(isset($_COOKIE["param"])){
 echo $_COOKIE["param"];
}
?>


<script>
function setCookie(c_name, value, expiredays) {                   
    var exdate = new Date();                   
    exdate.setDate(exdate.getDate() + expiredays);                   
    document.cookie = c_name + "=" + escape(value) + ";     
    expires=" + exdate.toGMTString() + ";     
    path=/";         
} 
// 读取cookie   
function getCookie(c_name) {    
    if (document.cookie.length > 0)     {
        c_start = document.cookie.indexOf(c_name + "=")           
        if (c_start != -1){ 
            c_start = c_start + c_name.length + 1 
            c_end = document.cookie.indexOf(";", c_start) 
            if (c_end == -1)   
                c_end = document.cookie.length   
                return unescape(document.cookie.substring(c_start, c_end))   
            } 
        } 
    return "" 
}

// 检查cookie
function checkCookie(c_name) {     
    username = getCookie(c_name);     
    console.log(username);     
    if (username != null && username != "")     
    { return true; }     
    else     
    { return false;  }
}

// 清除cookie 
function clearCookie(name) {     
    setCookie(name, "", -1); 
}

需要注意几点:

1、php用自身函数读取php设置的cookie,没有任何障碍,无需解码处理。

2、js采用cookie.js方法读取js设置的cookie,没有任何障碍,无需解码处理。

3、js读取php的中文cookie,建议使用 decodeURIComponent (escape("...")) 函数处理,否则可能读取不正常

4、php读取js的中文cookie 建议做 unescape 处理,否则可能出现乱码。


--------------------------------------------------------- Ta 只分享了这些内容 ---------------------------------------------------------------------

本文来源:功夫码(gongfuma.com)
声明:本文系功夫码原创稿件,版权属[功夫码 gongfuma.com]所有。
未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:功夫码",违者将依法追究责任。

相关文章

  • 回到顶部