從毫秒取得日期格式m-d-Y H:i:s.u
想像一下,您想要一個格式化的日期,包含微秒,來自以毫秒為單位的UNIX 時間戳。但你反覆得到000000 和這樣的結果:
07-28-2013 11:26:14.000000
登入後複製
解決方案
解決方案涉及使用輸入格式U.u:
$now = DateTime::createFromFormat('U.u', microtime(true));
echo $now->format("m-d-Y H:i:s.u");
登入後複製
這給出以下輸出:
04-13-2015 05:56:22.082300
登入後複製
理解格式
根據PHP 日期格式手冊,我們有:
時區注意事項
通常,如果未指定,createFromFormat() 將使用本地時區。但是,microtime() 傳回自 UTC 格式的 Unix 紀元以來經過的秒數,因此 DateTime 物件隱式初始化為 UTC。這對於伺服器內部任務來說很好,但是如果您需要顯示特定時區的時間,請在初始化物件後相應地設定時區。為此,請使用 setTimeZone() 方法。
附加說明
- 要輸入MySQL,請使用以下格式:format("Y-m-d H:i:s.u")
- 透過在該行中加入number_format( ) 改進了原始答案,這以精確的秒數修復了大小寫問題。
以上是如何在 PHP 中從毫秒取得日期格式 m-d-Y H:i:s.u?的詳細內容。更多資訊請關注PHP中文網其他相關文章!