我需要使用PHP将当前日期保存在cookie中,以便可以从javascript中读取。
我想知道如何做到这一点,因为有许多方式和格式在PHP中获取日期我不确定哪个是最容易在javascript中阅读,这对我的实现最重要是我需要能够用普通的JS检查自创建cookie以来已经过了多少时间(实际上是它的值)。
我已经有了一个获取cookie值的readCookie()函数,所以我的问题只是关于保存和检索(并可能解析)cookie。
答案 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