PHP 的 Datetime 物件傳回的 timestamp 為 10 位數,而此方法需要 timestamp 為毫秒。
請確保 timestamp 為 13 位數。
(mongodb >=1.0.0)
MongoDB\BSON\UTCDateTime::toDateTime — 傳回此 UTCDateTime 的 DateTime 表示法
此函式沒有參數。
範例 #1 MongoDB\BSON\UTCDatetime::toDateTime() 範例
<?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" }
PHP 的 Datetime 物件傳回的 timestamp 為 10 位數,而此方法需要 timestamp 為毫秒。
請確保 timestamp 為 13 位數。
//將擷取的時間轉換回本地時間
<?php
/********************建構子**********************************/
$orig_date = new DateTime('2016-06-27 13:03:33');
$orig_date=$orig_date->getTimestamp();
$utcdatetime = new MongoDB\BSON\UTCDateTime($orig_date*1000);
/********************以 UTC 擷取時間**********************************/
$datetime = $utcdatetime->toDateTime();
$time=$datetime->format(DATE_RSS);
/********************將時間轉換為本地時區*******************/
$dateInUTC=$time;
$time = strtotime($dateInUTC.' UTC');
$dateInLocal = date("Y-m-d H:i:s", $time);
echo $dateInLocal;
?>
輸出:2016-06-27 13:03:33
$tz = new DateTimeZone('Asia/Kolkata'); //設定你的時區
$date = date("Y-m-d h:i:sa"); //目前日期
$a = new MongoDB\BSON\UTCDateTime(strtotime($date)*1000);
$datetime = $a->toDateTime();
echo '<pre>';print_r($datetime);echo '</pre>';
$datetime->setTimezone($tz); //設定時區
$time=$datetime->format(DATE_ATOM); //(範例:2005-08-15T15:52:01+00:00)
echo "<br>". $time . "<br>";
輸出
//日期時間物件的輸出
日期時間物件
(
[date] => 2016-08-09 14:57:06.000000
[timezone_type] => 1
[timezone] => +00:00
)
//時間輸出
2016-08-09T20:27:06+05:30