2010-02-08 42 views
10

我正在使用PHP的MySQL數據庫。我使用DATETIME字段將我的日期值存儲在數據庫中。防止PHP日期()從默認爲12/31/1969

我正在使用此PHP代碼將輸入日期轉換爲MySQL的適當格式。

date("Y-m-d H:i:s", strtotime($inputDate)) 

然而,每當日期是無效的,它被放置在數據庫中1969-12-31 19:00:00

有沒有辦法爲默認這0000-00-00 00:00:00

回答

1

的strtotime是返回false哪個日期evals爲0之前,你應該檢查的strtotime沒有返回false,以防止:

$ts = strtotime($inputDate); 

if ($ts === false) 
{ 
//invalid date 
} 
else 
{ 
echo date("Y-m-d H:i:s", $ts); 
} 
15

只是檢測與的strtotime()輸出,這returns false on failure有效性。

喜歡的東西:

$time = strtotime($inputDate); 
$date = ($time === false) ? '0000-00-00 00:00:00' : date('Y-m-d H:i:s', $time);