我在將記錄插入到mysql時遇到問題。我擁有的記錄來自一個不同的網站(下載記錄),格式爲.CSV,日期格式爲「2015年12月12日」。我瞭解到PHP或Mysql只接受或理解「YYYY-MM-DD」格式甚至「YYYYMMDD」。MySQL插入之前的PHP收斂日期格式
如何在將它們包含在mysql查詢字符串中之前格式化日期?如何更改或轉換「2015/12/12」安排並將其轉換爲「2015-2-12」?
我在將記錄插入到mysql時遇到問題。我擁有的記錄來自一個不同的網站(下載記錄),格式爲.CSV,日期格式爲「2015年12月12日」。我瞭解到PHP或Mysql只接受或理解「YYYY-MM-DD」格式甚至「YYYYMMDD」。MySQL插入之前的PHP收斂日期格式
如何在將它們包含在mysql查詢字符串中之前格式化日期?如何更改或轉換「2015/12/12」安排並將其轉換爲「2015-2-12」?
只要使用日期()和的strtotime()函數:
$date = strtotime("2/12/2015");
echo date('Y-m-d', $date);
使用明確的日期格式:
$dateValue = '2/12/2015';
$date = DateTime::createFromFormat('d/m/Y', $dateValue);
$dateValue = $date->format('Y-m-d');
$ DATEVALUE持有轉換後的日期上第一
感謝William,請問你的建議和Gabriel的結果有什麼不同?請原諒我的說法,但如果兩者產生相同的輸出,我可能會與Gabriel一起使用,因爲它更容易記住像我這樣的noob:D –
主要區別在於此處提供的日期格式與讓PHP確定格式並轉換爲unix時間戳。 strtotime http://php.net/manual/en/function.strtotime.php。根據您的需求,這兩者都是準確的實施,它取決於您。除了輸出之外,我還希望定義預期的輸入格式,並且避免使用strtotime,除非這是我想要的輸出:http://www.hashbangcode.com/blog/how-i-learned-stop-using-strtotime -and-love-php-datetime –
對不起,但我無法弄清楚,但這裏返回的日期似乎是不同的日期,格式雖然工作:( –
遺憾錯過的strtotime()發佈,只是更新了它 –
謝謝加布裏埃爾,我試圖在網上搜索,但與關鍵字不幸運。我現在試試這個 –
這個爲我工作到目前爲止:) –