php strtotime 獲取上一個月或下一個月的坑


在平時的業務邏輯中經常會遇到用strtotime('last month')或strtotime('-1 month') 獲取上一個月,

strtotime('next month')或strtotime('+1 month') 獲取下一個月

但是在月末,如果前后兩個月的天數不一樣多,用strtotime獲取上一月的時候就得不到理想的值

比如:在10月31日,獲取上月就是錯誤的(得到的結果是10月)

同樣:在10月31日,獲取下個月也是錯誤的(得到的結果是12月)

在月初用strtotime存在同樣的問題

在求上一個月或下一個月的時候,可以用 mktime(0, 0, 0, date('m')-1,date('d'), date('Y'))

或mktime(0, 0, 0,date('m')+1, date('d'), date('Y'))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM