日期格式转换问题

时间:2012-01-20 07:43:44

标签: php date

我有一个问题,我一直在处理长期

请看下面的代码:(我在调试变量时得到了正确的值)

当输入例如“0000-00-00 00:00:00”

 $date1 = ($date['confirmed_at']); //value of $date1 is "0000-00-00 00:00:00"
 $date2 = strtotime($date1); //value of $date2 is "1"
 $date3 = date('y-m-d',$date2); //value of $date3 is "70-01-01"

输入时例如“2011-09-12 08:57:26”

 $date1 = ($date['confirmed_at']); //value of $date1 is "2011-09-12 08:57:26"
 $date2 = strtotime($date1); //value of $date2 is "1315817846"
 $date3 = date('y-m-d',$date2); //value of $date3 is "11-09-12"

我对我得到的价值感到有点困惑...... 我想要做的就是取目前在“YYYY-MM-DD HH-MM-SS”中的日期并将其转换为“YYYY-MM-DD”格式。 < / p>

3 个答案:

答案 0 :(得分:1)

你在第一个例子中看到的结果是strtotime()返回一个unix时间戳,即自1970年1月1日以来的秒数。它只是不能返回任何合理的{ {1}}。

对于0000-00-00 00:00:00格式,请使用YYYY-MM-DD

答案 1 :(得分:0)

使用“日期('Y-m-d',$ date2)”作为YYYY-MM-DD格式

答案 2 :(得分:0)

strtotime("0000-00-00 00:00:00")的结果可能会因PHP版本和操作系统而异,因此使用strtotime表示零日期"0000-00-00 00:00:00"毫无意义。