[英]Format MySQL timestamp to ics format
我正在嘗試將一些MySQL時間戳轉換為正式的.ics格式。 不幸的是,我總是得到輸出“ 19700101T013334Z
”。
MySQL格式: 2014-09-29 18:00:00
這是我的PHP函數,應該相應地轉換日期:
function dateToCal($timestamp) {
return date('Ymd\THis\Z', $timestamp);
}
我究竟做錯了什么?
date()
希望將Unix時間戳記作為第二個參數。 您可以使用strtotime()
將$timestamp
轉換$timestamp
Unix時間戳。
function dateToCal($timestamp) {
return date('Ymd\THis\Z', strtotime($timestamp));
}
如果使用UNIX_TIMESTAMP()
在查詢中將該日期轉換為Unix時間戳,可能會更容易,更好。
我知道您已經有了答案,但是您也可以在數據庫中執行此操作:
SELECT FORMAT_DATE("2014-09-29 18:00:00", "%Y%m%dT%H%i%sZ");
末尾的Z表示UTC,因此,如果您使用系統時間存儲日期,則也要進行轉換。
您必須先將MySql的日期時間轉換為Unix時間戳,然后才能使用它-
function dateToCal($timestamp) {
date('Ymd\THis', strtotime($timestamp));
}
您實際上不必在函數中使用\\Z
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.