The php Datetime object returns the timestamp with 10 digits and this method needs miliseconds in the timestamp.Make sure that the timestamp has 13 digits.
(mongodb >=1.0.0)
MongoDB\BSON\UTCDateTime::toDateTime — Returns the DateTime representation of this UTCDateTime
此函数没有参数。
Returns the DateTime representation of this UTCDateTime. The returned DateTime will use the UTC time zone.
示例 #1 MongoDB\BSON\UTCDatetime::toDateTime() example
<?php
$utcdatetime = new MongoDB\BSON\UTCDateTime(1416445411987);
$datetime = $utcdatetime->toDateTime();
var_dump($datetime->format('r'));
var_dump($datetime->format('U.u'));
var_dump($datetime->getTimezone());
?>
以上示例的输出类似于:
string(31) "Thu, 20 Nov 2014 01:03:31 +0000" string(17) "1416445411.987000" object(DateTimeZone)#3 (2) { ["timezone_type"]=> int(1) ["timezone"]=> string(6) "+00:00" }
The php Datetime object returns the timestamp with 10 digits and this method needs miliseconds in the timestamp.Make sure that the timestamp has 13 digits.
//convert retrieved time back to local time<?php/********************constructor**********************************/$orig_date = new DateTime('2016-06-27 13:03:33');$orig_date=$orig_date->getTimestamp();$utcdatetime = new MongoDB\BSON\UTCDateTime($orig_date*1000);/********************retrieve time in UTC**********************************/$datetime = $utcdatetime->toDateTime();$time=$datetime->format(DATE_RSS);/********************Convert time local timezone*******************/$dateInUTC=$time;$time = strtotime($dateInUTC.' UTC');$dateInLocal = date("Y-m-d H:i:s", $time);echo $dateInLocal;?>output: 2016-06-27 13:03:33
$tz = new DateTimeZone('Asia/Kolkata'); //Change your timezone$date = date("Y-m-d h:i:sa"); //Current Date$a = new MongoDB\BSON\UTCDateTime(strtotime($date)*1000); $datetime = $a->toDateTime(); echo '<pre>';print_r($datetime);echo '</pre>'; $datetime->setTimezone($tz); //Set timezone $time=$datetime->format(DATE_ATOM); //(example: 2005-08-15T15:52:01+00:00) echo "<br>". $time . "<br>";OUTPUT : //Output of datetime object DateTime Object ( [date] => 2016-08-09 14:57:06.000000 [timezone_type] => 1 [timezone] => +00:00 )//Output of time 2016-08-09T20:27:06+05:30