2016-10-10 52 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));