资讯专栏INFORMATION COLUMN

PHP实现 今天、昨天、上周、本周、本月 数据统计功能

isaced / 2506人阅读

摘要:应用场景按今天昨天上周本周本月统计某个人发布文章数量原理分析假设文章表里有一个字段存储创建文章时间戳,比如说今天那么查询条件为实现方案根据以上分析,需要知道今日开始时间戳和结束时间戳那么昨天上周本周也类似。

应用场景

按今天、昨天、上周、本周、本月 统计某个人发布文章数量

原理分析

假设 文章表里 有一个字段存储 创建文章时间戳(cdate),比如说 今天(2016-11-8) 那么查询条件 为 cdate >= 2016-11-8 00:00 AND cdate <= 2016-11-8 23:59

实现方案

根据以上分析,需要知道今日开始时间戳和结束时间戳, 那么昨天、上周、本周也类似。使用PHP 的mktime 函数 可获得开始时间戳和结束时间戳。

mktime()

语法:mktime(hour,minute,second,month,day,year)

参数 描述
hour 可选,规定小时
minute 可选,规定分钟。
second 可选,规定秒
month 可选,规定用数字表示的月
month 可选,规定用数字表示的月
day 可选,规定天
year 可选,规定年
代码实现
//php获取今日开始时间戳和结束时间戳
$today_start=mktime(0,0,0,date("m"),date("d"),date("Y"));
$today_end=mktime(0,0,0,date("m"),date("d")+1,date("Y"))-1;

//php获取昨日起始时间戳和结束时间戳
$yesterday_start=mktime(0,0,0,date("m"),date("d")-1,date("Y"));
$yesterday_end=mktime(0,0,0,date("m"),date("d"),date("Y"))-1;

//php获取上周起始时间戳和结束时间戳
$lastweek_start=mktime(0,0,0,date("m"),date("d")-date("w")+1-7,date("Y"));
$lastweek_end=mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"));

//php获取本周周起始时间戳和结束时间戳
$thisweek_start=mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y"));
$thisweek_end=mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"));

//php获取本月起始时间戳和结束时间戳
$thismonth_start=mktime(0,0,0,date("m"),1,date("Y"));
$thismonth_end=mktime(23,59,59,date("m"),date("t"),date("Y"));

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22026.html

相关文章

  • 时间处理(格式化、本日、本周本月、本季度等)

    摘要:依赖包方式方式时间处理获取当前时间获取当前时间默认格式化指定格式化年月日指定格式化打印结果默认格式化指定格式化年月日指定格式化年月日时分秒格式化如果输入的是字符串则转为日期类型,反之则转为字符串类型。 依赖jar包 gradle方式 compile group:com.gitee.zhtt,name:great-javautils,version:8.0.1-alpha.3 maven...

    vboy1010 评论0 收藏0
  • 不同浏览器下的时间格式化问题

    摘要:获得某月的天数获得本季度的开始月份获得今天之前的日期获得今天之后的日期获得本周的开始日期获得本周的结束日期获得上周的开始日期获得上周的结束日期获得本月的开始日期获得本月的结束日期获得本季度的开始日期获得本季度的结束日期 最近项目中遇到一个问题, 提交后的时间后台会返回2018-01-05T17:32:03这样的一个时间格式, 在展示的是则只需要展示2018-01-05. 这种需求应该有...

    channg 评论0 收藏0
  • 刨刨 Carbon API

    摘要:介绍是对模块的二次扩展提供时间格式化,时间计算的功能官方主页为地址为文件结构目录描述源文件源文件类的二次扩展类主要用于时差计算类的二次扩展类提供时间计算,格式化输出的功能自定义异常文件夹语言本地化文件夹类的方法会用到 介绍 Carbon是对PHP DateTime模块的二次扩展;提供时间格式化,时间计算的功能; 官方主页为 http://carbon.nesbot.com/; Git...

    Yuqi 评论0 收藏0
  • 国际化相对时间格式化API:Intl.RelativeTimeFormat

    摘要:在不牺牲性能的情况下实现相对时间的本地化格式化。用法与示例以下示例展示了如何使用英语创建相对时间格式化程序。需要注意的是传递给构造函数的参数必须是一个语言标记,或者是一个包括多个语言标记的数组。 原文:The Intl.RelativeTimeFormat API 作者:Mathias Bynens(@mathias) 现代 Web 应用程序通常使用昨天,42秒前或3个月之类的短语,...

    Richard_Gao 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<