我有一個有varchar類型的數據庫列的有效日期,所有數據庫列在d/m/y格式。然後,當我嘗試將它轉換爲帶strtotime函數和日期格式的日期格式時,我得到01/01/70。我甚至嘗試用純字符串值替換數據庫結果。 我已經搜查,發現該鏈接 PHP strtotime returns a 1970 date when date column is null PHP : strtotime() returns always 01/01/1970 strtotime() does not return correct value when specifying date in dd/mm/yyyy format 但由於數據不爲空,它是格式無效兩人都沒有幫助。這裏是我的代碼片段strtotime函數返回01/01/70與有效輸入
if(isset($item['prep_date']) && $item['prep_date'] != NULL){
$trial=$item['prep_date'];
echo ": ".$trial;
$prepDate= strtotime($trial);
$prepDate = date('d/m/y', $prepDate);
echo "= ".$prepDate;
}
我在想什麼?下面是兩個回波
28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 03/01/13= 01/03/13: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 18/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 02/09/13= 09/02/13: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 05/11/13= 11/05/13: 28/10/13= 01/01/70: 28/11/13= 01/01/70: 05/11/13= 11/05/13: 28/10/13= 01/01/70: 28/10/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 05/11/13= 11/05/13: 11/12/13= 12/11/13: 11/12/13= 12/11/13: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 11/12/13= 12/11/13: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 28/11/13= 01/01/70: 30/01/14= 01/01/70
你可以請echo或var_dump($ item ['prep_date'])併發布結果? – Ryan
'28/11/13'被視爲「第28個月的第11天」(從03/01/13 = 01/03/13結果來看,這對你來說並不明顯)。如果你想'天一個月'的訂單 - 使用點,而不是斜線 – zerkms
是的,使用4位數字的年份也是一個非常好的習慣 – Ryan