大家好,我正在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 ]] )
您需要使用strtotime
或DateTime
转换时间字符串。构造函数文档中的示例代码甚至包括一个示例:
$d = new MongoDate(strtotime("2009-05-01 00:00:01"));
echo "$d'n";