2012-06-25 61 views
1

我保存这个日期在cookie中的cookie:日期未正确保存在

Tue Jun 26 2012 15:38:41 GMT+0200 (CEST) 

,现在我需要打印它以这种形式:

06/26/2012 15:38 

所以我写这篇文章的代码:

echo $_COOKIE['date']; 
echo date('m/d/Y g:i A', strtotime($_COOKIE['date'])); 

,但我得到这个:

Tue Jun 26 2012 15:38:41 GMT 0200 (CEST) 
12/31/1969 7:00 PM 

代替:

06/26/2012 15:38 

为什么?

+0

输出中'GMT'和'0200'之间没有加号,也许你错过了什么? –

回答

2

的strtotime似乎不明白的日期格式,你可以尝试用日期时间解析它:: createFromFormat或者你可以尝试将其保存到其他格式

+0

有没有批准链接?找不到'strtotime'支持的格式列表 –

+0

是的有:http://www.php.net/manual/en/datetime.formats.php(没有检查你的格式是否支持) – Mathieu

1

也许它更易于存储在cookie中的时间戳和不是日期字符串。

$_COOKIE['date'] = time(); 

然后直接读取它的日期函数。

我已经试过这样:

<?php 
setcookie('date', time()); 
var_dump($_COOKIE); 
echo date('m/d/Y g:i A', $_COOKIE['date']); 
?> 

,其结果是:06/25/2012下午6时13分

+0

我存储了日期时间但现在我得到同样的问题:( – xRobot

+0

@xRobot:我编辑了我的文章,我已经尝试了它,并且它的工作也许还有其他一些错误的设置。 – Stony

0

因为strtotime是不承认你使用的日期格式。