PHP获取上个月、下个月、本月的日期(strtotime(),date())
2016-01-29 17:12
579 查看
今天写程序的时候,突然发现了很早以前写的获取月份天数的函数,经典的 switch版,但是获得上月天数的时候,我只是把月份-1了,估计当时太困了吧,再看到有种毛骨悚然的感觉,本来是想再处理一下的,但是一想肯定还有什 么超方便的方法,于是找到了下面这个版本,做了一点小修改。
获取本月日期:
$firstday是月份的第一天,假如$date是2014-2这样的话,$firstday就会是2014-02-01,然后根 据$firstday加一个月就是2014-03-01,再减一天就是2014-02-28,用date()和strtotime()真是太方便了。
获取上月日期:
上月日期需要先获取一个时间戳,然后在月份上-1就OK了,超智能的date()会把2014-0-1这种东西转换成2013-12-01,太爽了。
获取下月日期:
下月日期的代码看起来比较长一点,因为date()转不了类似2014-13-01这种东西,它会直接回到1970,所以前面需要处理一下12月的问题,除了12月就直接月份+1就OK啦。
总得来说,还是很方便的,日期函数太强大了。
转自:http://www.cnblogs.com/shouce/p/5087653.html
获取本月日期:
1 function getMonth($date){ 2 $firstday = date("Y-m-01",strtotime($date)); 3 $lastday = date("Y-m-d",strtotime("$firstday +1 month -1 day")); 4 return array($firstday,$lastday); 5 }
$firstday是月份的第一天,假如$date是2014-2这样的话,$firstday就会是2014-02-01,然后根 据$firstday加一个月就是2014-03-01,再减一天就是2014-02-28,用date()和strtotime()真是太方便了。
获取上月日期:
1 function getlastMonthDays($date){ 2 $timestamp=strtotime($date); 3 $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)-1).'-01')); 4 $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); 5 return array($firstday,$lastday); 6 }
上月日期需要先获取一个时间戳,然后在月份上-1就OK了,超智能的date()会把2014-0-1这种东西转换成2013-12-01,太爽了。
获取下月日期:
1 function getNextMonthDays($date){ 2 $timestamp=strtotime($date); 3 $arr=getdate($timestamp); 4 if($arr['mon'] == 12){ 5 $year=$arr['year'] +1; 6 $month=$arr['mon'] -11; 7 $firstday=$year.'-0'.$month.'-01'; 8 $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); 9 }else{ 10 $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)+1).'-01')); 11 $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); 12 } 13 return array($firstday,$lastday); 14 }
下月日期的代码看起来比较长一点,因为date()转不了类似2014-13-01这种东西,它会直接回到1970,所以前面需要处理一下12月的问题,除了12月就直接月份+1就OK啦。
总得来说,还是很方便的,日期函数太强大了。
转自:http://www.cnblogs.com/shouce/p/5087653.html
相关文章推荐
- Matplotlib 教程
- matplotlib核心剖析
- thinkPHP的字母函数
- MyBatis调用存储过程,含有返回结果集、return参数和output参数
- 重置PHPCMS后台登录密码
- Web Api 输出Json格式数据,中文要进行Unicode编码(模拟PHP的json_encode输出)
- textprogerss
- yii1.*的增删改查
- PHP面向对象深入研究之【继承】,减少代码重复
- php接口数据加密、解密、验证签名代码实例
- 说一下output子句
- php浮点数的比较
- phpcms后台登录验证码删除
- 使用phpexecel类库导出数据
- 关于php 类 方法重定义的问题
- php学习第二天:代码重构
- 做为一个PHP的工作者第一篇blog
- 去掉phpcms的模板缓存
- TProfiler部署文档--笔记
- Yii:t()的用法