Php Mongodate 将日期转换为 1970

Php Mongodate Converting Date to 1970

大家好,我将日期存储在 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。请告诉我我做错了什么

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

这样的字符串
$params['start'] = new MongoDate(strtotime($params['start']));

MongoDate constructor 期望时间以 Unix 纪元秒为单位,而不是时间字符串。

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

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

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