关于统计今天、昨天、当前月份、上月数据的时间格式

来源:互联网 发布:java五子棋人机对战 编辑:程序博客网 时间:2024/06/04 18:03

统计中需要获取今天、昨天、本月、上月的统计数据,但在时间的写法上总是很迷茫。

当前的方式可以很清晰的明确每一个时间的范围

先得到一个当前时间的时间戳

$now = time(); //当前时间

再从每天的零时到下一天的零时前一秒来获取今天的全部时间

$mor_today = strtotime(date("Y-m-d 00:00:00",$now));    //今天时间开始$eve_today = strtotime(date("Y-m-d 23:59:59",$now));    //今天时间结束$mor_yes = strtotime(date("Y-m-d 00:00:00",$now-86400)); //昨天时间开始$eve_yes = strtotime(date("Y-m-d 23:59:59",$now-86400)); //昨天时间结束

当月:需要从每月的第一天到当月的最后一天

$days = date('t', strtotime($now));  //获取指定时间月份的天数$begin_mon = strtotime(date("Y-m-01",$now));                //本月时间开始$end_mon = strtotime(date("Y-m-".$days." 23:59:59",$now));  //本月时间结束

上月:需要获取当前月份并减1

$mon = date('m',$now)-1;$begin_last = strtotime(date("Y-".$mon."-01",$now));       //上月时间开始$days1 = date('t', $begin_last);  //获取上月的天数$end_last = strtotime(date("Y-".$mon."-".$days1." 23:59:59",$now));//上月时间结束

涉及函数

date();    函数格式化本地日期和时间,并返回已格式化的日期字符串。语法    date(format,timestamp)    format 必需。规定时间戳的格式。    timestamp 可选。规定时间戳。默认是当前的日期和时间。参数:Y   4 位数字完整表示的年份    例如:1999 或 2003m   数字表示的月份,有前导零    01 到 12d   月份中的第几天,有前导零的 2 位数字 01 到 31t   指定的月份有几天    28 到 31strtotime();     函数将任何英文文本的日期或时间描述解析为 Unix 时间戳     (自 January 1 1970 00:00:00 GMT 起的秒数)。语法    strtotime(time,now);参数  描述time    必需。规定日期/时间字符串。now 可选。规定用来计算返回值的时间戳。如果省略该参数,则使用当前时间。
阅读全文
0 0
原创粉丝点击