有的时候需要查询数据库特定时间段的记录,比如,获取今日、本周、本月、本季度的数据,这就需要用到php的date()函数和 maketime()函数了,下面先简单的介绍下这2个函数的用法,然后直接上代码。
1、date函数定义
①、定义:date() 函数格式化本地日期和时间,并返回格式化的日期字符串。
②、语法 date(format,timestamp);
③、参数format必选
d - 一个月中的第几天(从 01 到 31)
w - 星期几的数字表示(0 表示 Sunday[星期日],6 表示 Saturday[星期六])
m - 月份的数字表示(从 01 到 12)
t - 给定月份中包含的天数
n - 数字表示的月份,没有前导零,1 到 12
④、参数timestamp可选,规定一个整数的 Unix 时间戳。默认是当前的本地时间(time())。
2、mktime函数定义
①定义:mktime() 函数返回一个日期的 UNIX 时间戳。
②语法:
//可选参数顺序:时、分、秒、月、天、年
mktime(hour,minute,second,month,day,year);
3、获取起止时间戳
①、今日开始时间戳和结束时间戳
$begintoday = mktime(0,0,0,date('m'),date('d'),date('Y'));
$endtoday = mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
②、本周开始时间戳和结束时间戳
$beginthisweek = mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"));
$endthisweek = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"));
③、本月开始时间戳和结束时间戳
$beginthismonth = mktime(0,0,0,date('m'),1,date('Y'));
$endthismonth = mktime(23,59,59,date('m'),date('t'),date('Y'));
④、本季度起始时间戳和结束时间戳
$season = ceil((date('n'))/3); //当月是第几季度
$begin = mktime(0, 0, 0,$season*3-3+1,1,date('Y'));
$end = mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y'));除非特殊声明,本站文章均为原创,转载请务必保留本文链接