我需要使用 PHP 将当前日期保存在 cookie 中,以便它可以从 javascript 中读取。
我想知道如何做到这一点,因为有很多方法和格式可以在 PHP 中获取日期,我不确定哪一种在 javascript 中最容易阅读,对我的实现来说最重要的是我需要能够使用普通 JS 检查自 cookie 创建以来已经过去了多少时间(实际上是值)。
我已经有一个 readCookie() 函数可以获取 cookie 的值,所以我的问题只是关于保存和检索(也许是解析)cookie。
我需要使用 PHP 将当前日期保存在 cookie 中,以便它可以从 javascript 中读取。
我想知道如何做到这一点,因为有很多方法和格式可以在 PHP 中获取日期,我不确定哪一种在 javascript 中最容易阅读,对我的实现来说最重要的是我需要能够使用普通 JS 检查自 cookie 创建以来已经过去了多少时间(实际上是值)。
我已经有一个 readCookie() 函数可以获取 cookie 的值,所以我的问题只是关于保存和检索(也许是解析)cookie。
我可能会使用date('r')
PHP 中的 RFC 2822 格式日期。或者使用microtime()
which 返回自 1970 年 1 月 1 日以来的毫秒数。
然后使用 Javascript 中的Date 对象构造函数创建一个 Date 对象,您可以修改并计算已经过去了多少时间。
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);
cookie 保存在浏览器上,因此使用 jquery cookie 插件可以为您工作
https://github.com/carhartl/jquery-cookie
$.cookie('the_cookie'); // => "the_value"
$.cookie('not_existing'); // => undefined