如何使用PHP在cookie中保存当前日期并在javascript中读取?

时间:2013-10-18 14:00:07

标签: javascript php cookies

我需要使用PHP将当前日期保存在cookie中,以便可以从javascript中读取。

我想知道如何做到这一点,因为有许多方式和格式在PHP中获取日期我不确定哪个是最容易在javascript中阅读,这对我的实现最重要是我需要能够用普通的JS检查自创建cookie以来已经过了多少时间(实际上是它的值)。

我已经有了一个获取cookie值的readCookie()函数,所以我的问题只是关于保存和检索(并可能解析)cookie。

3 个答案:

答案 0 :(得分:1)

我可能会使用RFC 2822格式的日期,即PHP中的date('r')。或者使用microtime()返回自1970年1月1日以来的毫秒数。

然后使用Javascript中的Date object constructor创建一个可以修改的Date对象,并计算已经过了多长时间。

答案 1 :(得分:0)

PHP:

$date = new DateTime();
setcookie("timestamp", $date->getTimestamp());

JS:

function getCookie(c_name)
{
    var i,x,y,ARRcookies=document.cookie.split(";");

    for (i=0;i<ARRcookies.length;i++)
    {
        x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
        y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
        x=x.replace(/^\s+|\s+$/g,"");
        if (x==c_name)
        {
            return unescape(y);
        }
     }
}

var timestamp = getCookie('timestamp');
var date = new Date(timestamp * 1000);

答案 2 :(得分:-2)

cookie保存在浏览器中 所以使用jquery cookie插件可以为你工作

https://github.com/carhartl/jquery-cookie

$.cookie('the_cookie'); // => "the_value"
$.cookie('not_existing'); // => undefined