2013-10-30 38 views
0

我需要在類型爲datetime的SQL字段中引入我的日期和時間。目前,日期格式爲mm/dd/yyyy,我的時間格式爲hh:ii。我試圖發送這個數據爲
$datetime=$date.' '.$time,但沒有工作,無論輸入是什麼,在數據庫我總是有00-00-00 00:00:00:00
我該如何解決這個問題?如何正確格式化SQL日期時間

+2

不PHP不允許你傳遞值*日期*日期/時間值,避免了串格式化完全? (例如,這就是我在Java或C#中所做的)。 –

+0

[在PHP中將一個日期格式轉換爲另一種格式]的可能的重複(http://stackoverflow.com/questions/2167916/convert-one-date-format -into-another-in-php) –

回答

1
<?php 
$date="01/01/2017"; // This is the format you mentioned 
$time="22:11";  // This is the format you mentioned 
$time=strtotime("$date $time"); //if strtotime() confuses mm with dd, use mktime() 
echo date("Y-m-d H:i:s",$time); // MySQL Format 
?> 
+0

好的,這似乎是合法的。謝謝 –

+0

試一試,看看它是否適合你。 –

+0

現在就做這個:) –

0

您可以將它作爲yyyy-mm-dd hh:km發送。這將始終由數據庫正確拾取。如果只有日期爲字符串,則需要使用例如strtotime或substr來轉換它。

0

MySQL的日期時間的默認格式爲YYYY-MM-DD HH:二:: SS 所以插入自定義日期格式到MySQL,你需要指定數據類型列VARCHAR

或者你可以存儲根據默認格式爲MySQL爲表和顯示目的,你可以使用的MySQL DATE_FORMAT功能自定義日期格式

+0

嗯,問題是輸入的數據是mm/dd/yyyy hh:ii,必須傳入數據庫。 我曾經見過類似'SET DATEFORMAT'的東西,但並不確定如何使用它。 –