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