2015-06-19 57 views
1

我有下面的代碼,以創建一個先前下個月鏈接:上一個和下一個月未正常工作

$date = mktime(0, 0, 0, date("m"), 1, date("y")); 
$nextMonth = strftime('%B', strtotime('+1 month', $date)); 
$prevMonth = strftime('%B', strtotime('-1 month', $date)); 
$nextYear = strftime('%Y', strtotime('+1 month', $date)); 
$prevYear = strftime('%Y', strtotime('-1 month', $date)); 

現在,當我到十二月

the next year variable 2016 
the previous year variable 2015 

但是當現在2016年1月

the next year variable 2015 
the previous year variable 2014 

日期我不明白爲什麼它這樣做,或者我在做什麼錯在這裏。任何人有任何想法如何解決這個問題?

+0

https://eval.in/384578 – splash58

+0

https://eval.in/ 384585 >>我將您的日期代碼重寫爲接受月份和年份作爲參數的函數,並且它正確輸出。 (更新的鏈接顯示相對於輸出結果的當前月份/年份,使用'>'縮進。 –

+0

你是男人,那就是我正在尋找thnks! –

回答

0

測試你的功能具有固定參數,你會得到:

$date = mktime(0, 0, 0, 1, 1, 2016); 

和echo $ nextYear不會給你2016,因爲你只有1個月新增。測試它做什麼腳本:

the next year variable 2016 // which is january 2016 + 1 month = february 2016 
the previous year variable 2015 // jan 2016 - 1 month = dec 2015 

我的猜測是你逝去的日期( 'Y'),卻沒有意識到這是2015年

相關問題