[英]how to convert unix timestamp to mongodb date in php mongo query
[英]Timestamp to date in php and mongodb
我花了3天的时间尝试解决此问题,但没有成功。 我正在使用MongoDB PHP库,并尝试使用PHP Docs中的示例在有效日期中转换时间戳,但它始终返回1970-01-17。
代码是:
$utcdatetime = new MongoDB\BSON\UTCDateTime(1453939200);
$datetime = $utcdatetime->toDateTime();
var_dump($datetime);
该文档指出,构造函数采用整数参数表示时间戳(以毫秒为单位),您提供的时间戳以秒为单位,因此无效的日期结果。
将该值乘以1000可获得以毫秒为单位的时间戳,从而返回转换后的有效datetime对象:
$timestamp = 1453939200 * 1000;
$utcdatetime = new MongoDB\BSON\UTCDateTime($timestamp);
$datetime = $utcdatetime->toDateTime();
var_dump($datetime);
对于寻求此功能的任何人:您必须首先在时间戳中转换值,然后才能在有效的ISODate中对其进行转换。 例如:
$utcdatetime = new MongoDB\BSON\UTCDateTime(strtotime($date));
$date2 = new MongoDB\BSON\Timestamp(1, date($utcdatetime));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.