欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php 获取指定月第一天和最后一天

程序员文章站 2022-05-18 16:39:20
...
本文章给大家介绍在php 中利用date和strtotime函数获取用户给定时间的第一天或文章最后一天,有需要了解学习的朋友可进入参考。

借助于date和strtotime函数,可以轻松的获取本月、下月以及上月的第一天和最后一天,下面分别给出其实现。其中函数的参数date格式为yyyy-MM-dd。

1、给定一个日期,获取其本月的第一天和最后一天

代码如下 复制代码

function getCurMonthFirstDay($date) {
return date('Y-m-01', strtotime($date));
}

function getCurMonthLastDay($date) {
return date('Y-m-d', strtotime(date('Y-m-01', strtotime($date)) . ' +1 month -1 day'));
}

2、给定一个日期,获取其下月的第一天和最后一天

代码如下 复制代码

function getNextMonthFirstDay($date) {
return date('Y-m-d', strtotime(date('Y-m-01', strtotime($date)) . ' +1 month'));
}

function getNextMonthLastDay($date) {
return date('Y-m-d', strtotime(date('Y-m-01', strtotime($date)) . ' +2 month -1 day'));
}

3、给定一个日期,获取其下月的第一天和最后一天

代码如下 复制代码

function getPrevMonthFirstDay($date) {
return date('Y-m-d', strtotime(date('Y-m-01', strtotime($date)) . ' -1 month'));
}

function getPrevMonthLastDay($date) {
return date('Y-m-d', strtotime(date('Y-m-01', strtotime($date)) . ' -1 day'));
}

其中strtotime函数参数"+1 month",php会根据具体月份来确定增加多少天,可能是28、29(2月)、30(小月)或 31(大月);某月的第一天 "-1 day" 自然就是上个月最后一天,php也会根据月来智能确定是28、29、30或31。


strtotime — 将任何英文文本的日期时间描述解析为 Unix 时间戳


Report a bug 说明
int strtotime ( string $time [, int $now = time() ] )
本函数预期接受一个包含美国英语日期格式的字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数),其值相对于 now 参数给出的时间,如果没有提供此参数则用系统当前时间。



相关标签: strtotime