2017-02-13 33 views
1

我有unix時間戳值,像下面這樣的milleseconds。PHP DataContractJsonSerializer格式

 $timezone = date_default_timezone_set('Asia/Manila'); 
     $dateTime = DateTime::createFromFormat('m-d-Y H:i:s', '4-5-2015 8:07:27'); 

     $requiredJsonFormat = sprintf(
      '\/Date(%s%s)\/', 
      $dateTime->format('U') * 1000, 
      $dateTime->format('O') 
     ); 

     echo $requiredJsonFormat; 

以上輸出將會是。

\/Date(1428192447000+0800)\/

如何讓上面的代碼顯示輸出像下面。

\/Date(1428192447278+0800)\/"

回答

0

看來你想輸出微秒爲好。 根據php.net,只有在微秒啓動對象時,纔可以使用DateTime對象。

$dateTime = DateTime::createFromFormat('m-d-Y H:i:s:u', '4-5-2015 8:07:27:278'); 

如果你不知道,你現在就可以得到它。

$requiredJsonFormat = sprintf(
    '\/Date(%s%s%s)\/', 
    $dateTime->format('U'), 
    $dateTime->format('u')/1000, 
    $dateTime->format('O') 
);