Php Mongodate转换日期到1970年

时间:2016-04-06 15:00:12

标签: php mongodb mongodate

大家好我在mongodb存储日期。我面临的问题是我得到的日期时间字符串。我尝试将其转换为mongodate但它将其转换为0.00000000 2016。这是代码

 $params['start'] = new MongoDate($params['start']);
        $params['end'] = new MongoDate($params['end']);

字符串会以此格式2016-04-07 19:49:50显示日期时间,但在转换后,它会变为此0.00000000 2016。请告诉我,我做错了什么

2 个答案:

答案 0 :(得分:4)

Per the docs,MongoDate需要时间戳值1460058590,而不是像2016-04-07 19:49:50这样的字符串。

$params['start'] = new MongoDate(strtotime($params['start']));

答案 1 :(得分:3)

MongoDate constructor需要在Unix纪元秒内的时间,而不是时间字符串。

  

public MongoDate::__construct ([ int $sec = time() [, int $usec = 0 ]] )

您需要使用strtotimeDateTime转换时间字符串。构造函数文档中的示例代码甚至包含一个示例:

$d = new MongoDate(strtotime("2009-05-01 00:00:01"));
echo "$d\n";