在写程序的时候,突然发现一个功能早已在开关的经典版本的天数写的,但在上个月的天数,我只是放在1,估计是太困了,然后看见一个毛骨悚然想要的感觉,然后对付你,但要知道超方便的方法,发现以下的版本,做一点修改。

得到这个月的日期:


函数获得当前的月份($日){
哈尔滨美元=日期(y-m-01
最后一天的日期(美元=当前
返回的数组($天,为最后一天);
}



$天是这个月的第一天。如果日期2014-2美元,那么美元将2014-02-01哈尔滨。然后再加上一个月的第一天是2014-03-01美元,那一天是2014-02-28,和日期()和()是strtotime真方便。

上个月的日期:


功能getlastmonthdays($日){
美元= strtotime($日期时间戳);
第一天=日美元('y-m-01,strtotime(日期(Y,为时间戳)。'。(日期,时间戳- 1)- 01);
最后一天的日期('y-m-d美元= strtotime($,第一天+ 1个月的1天));
返回的数组($天,为最后一天);
}




上个月的日期需要先得到一个时间戳,然后这个月的1就可以了。超级智能的日期将变换成2013-12-01 2014-0-1。那太好了。

下个月的约会:


功能getnextmonthdays($日){
美元= strtotime($日期时间戳);
$ ARR = getdate($时间戳);
如果($ ARR { 'mon} = = 12){
年=美元美元'year ARR {'} + 1;
美元一个月=美元{ 'mon} 11度;
第一天=元美元一年。' 0 '。美元一个月。' 01 ';
最后一天的日期('y-m-d美元= strtotime($,第一天+ 1个月的1天));
其他{ }
第一天=日美元('y-m-01,strtotime(日期(Y,为时间戳)。'。(日期,时间戳+ 1)- 01);
最后一天的日期('y-m-d美元= strtotime($,第一天+ 1个月的1天));
}
返回的数组($天,为最后一天);
}




下个月的代码看起来比较长。因为日期()不可能像2014-13-01,它会回到1970,因此我们需要处理的问题,在十二月。除了十二月,+ 1在直接月份也可以。

一般来说,它仍然非常方便,日期函数太强大了。

最后,对使用strtotime简介

获取指定日期的UNIX时间戳



例的strtotime(着)如下:

回声strtotime(着)

结果:1232553600

描述:返回0点,0分钟和0秒时间戳2009年1月22日。



获取英文文本的日期时间



示例如下:

为了进行比较,时间戳和指定的时间戳使用日期转换为系统时间。



(1)打印时间戳strtotime(1天)明天这个时候。

当前时间:

Echo date (Y-m-d H:i:s

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:2009-01-23 09:40:25



(2)打印时间戳strtotime(1天)在昨天的这个时候。

当前时间:

回声的日期(当前H:我:S

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:2009-01-21 09:40:25



(3)打印时间戳strtotime(1周)在下一个星期的这个时候

当前时间:

回声的日期(当前H:我:S

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:2009-01-29 09:40:25



(4)打印时间戳strtotime上周这个时候(1周)

当前时间:

回声的日期(当前H:我:S

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:09:40:25见习



(5)打印时间戳strtotime(下星期四)指定下一周。

当前时间:

回声的日期(当前H:我:S

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:2009-01-29 00:00:00



(6)打印时间戳strtotime(上星期四)指定的最后一个星期。

当前时间:

回声的日期(当前H:我:S

结果:2009-01-22 09:40:25

指定的时间:

回声的日期(当前H:我:S

结果:见习00:00:00



上面的例子表明,strtotime可以解释日期和任何英语文本为Unix时间戳时间说明。我们结合mktime()或()日期格式的日期和时间到指定时间达到要求的日期和时间。