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。请告诉我我做错了什么

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

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

MongoDate构造函数要求时间以Unix epoch秒为单位,而不是时间字符串。

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

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

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