2016-10-10 79 views
0

我遇到一些麻煩一些SQLSRV日期和PHP。下面是代碼:PHP日期轉換爲SQLSRV

echo date_format($startDate, 'd/m/Y'); 
echo date_format($endDate, 'd/m/Y'); 


$endDate = date('Y-m-d', strtotime(date_format($endDate, 'd/m/Y'))); 
$startDate = date('Y-m-d', strtotime(date_format($startDate, 'd/m/Y'))); 

從上面的回聲結果是:10/10/201613/10/2016至極是確定的,因爲這就是我從數據庫中獲取。但隨着運行代碼我使用了一段時間內的2串再次插入SQLSRV DB到日期格式$stardDate插入爲2016-10-10的所有行是確定,但$endDate插入爲1970-01-01

無法弄清楚什麼是錯的。

+0

什麼是$ endDate變量值? –

+0

這是確切的相同的格式'$ startDate'一個SQL場 - 2016年10月13日 – rgomez

+0

不是U必須要檢查'回聲$ endDate' – devpro

回答

0

回答我的問題的錯誤是在轉換,所以我發現我需要更換/與 - 這裏是兩個字符串返回確定的代碼。感謝@WEI_DBA指出我:

$endDate = date_format($endDate, 'd/m/Y'); 
$endDate = str_replace('/', '-', $endDate); 
$endDate = date('Y-m-d', strtotime($endDate)); 

$startDate = date_format($startDate, 'd/m/Y'); 
$startDate = str_replace('/', '-', $startDate); 
$startDate = date('Y-m-d', strtotime($startDate));