我很難得到日期來保持變量。當我打算從當前日期減去幾個月時,它會給我回0(默認回到1-1-1970)。PHP Date not sticking
有關我可能做錯什麼的想法?
PHP:
$progress = 5;
$initialDate = date('m-d-Y');
echo "ini date: " . date('m-01-Y',$initialDate) . "<br>";
$date = date('m-01-Y', strtotime("-$progress months", strtotime(date('m-d-Y',$initialDate))));
echo "date: " . $date . "<br>";
輸出:
ini date: 12-01-2014
date: 08-01-1969
這輸出不匹配你的代碼,日期的'第二個參數()'應該是一個時間戳,而不是格式化的日期。您應該保留日期作爲時間戳(或'DateTime'對象...),並且只在將它們輸出到瀏覽器時格式化它們。 – jeroen
如果你打開PHP錯誤輸出,你會得到更多關於問題出現位置的想法 - 正如@jeroen所說,PHP會期待一個時間戳,在這個時間戳裏你傳遞一個格式化日期的字符串,這將導致一個PHP注意:「遇到一個非正確格式的數值...」 –
PHP錯誤已打開,這正是我的代碼和輸出。 – Andrew