php 获取今日、昨日、上周、本周、本月、上月、今年的起始时间戳和结束时间戳的方法
//php获取今日开始时间戳和结束时间戳
$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
//或
$beginToday=strtotime(date('Y-m-d',strtotime('0 day')));
$endToday=strtotime(date('Y-m-d',strtotime('+1 day')));
//php获取昨日起始时间戳和结束时间戳
$beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
//或
$beginYesterday=strtotime(date('Y-m-d',strtotime('-1 day')));
$endYesterday=strtotime(date('Y-m-d',strtotime('0 day')));
//php获取上周起始时间戳和结束时间戳【错误写法,当天为周日时以下写法错误,所以不能用】
$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
//php获取上周起始时间戳和结束时间戳【正确写法】
$beginLastweek=strtotime("last week Monday",time());
$endLastweek=strtotime("last week Sunday",time())+86399;
//php获取本周起始时间戳和结束时间戳【开始时间周一,结束时间为周日】
$beginLastweek=strtotime("this week Monday",time());
$endLastweek=strtotime("this week Sunday",time())+86399;
//php获取本周起始时间戳和结束时间戳【开始时间周日,结束时间为周六】
$beginLastweek=mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"));
$endLastweek=mktime(0, 0 , 0,date("m"),date("d")-date("w")+7,date("Y"));
//php获取上一月起始时间戳和结束时间戳
$beginLastmonth=mktime(0, 0 , 0,date("m")-1,1,date("Y"));
$endLastmonth=mktime(23,59,59,date("m") ,0,date("Y"));
//php获取上上月起始时间戳和结束时间戳
$beginLastmonth2=mktime(0, 0 , 0,date("m")-2,1,date("Y"));
$endLastmonth2=mktime(23,59,59,date("m")-1 ,0,date("Y"));
//php获取本月起始时间戳和结束时间戳
$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
$endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));
//php获取今年起始时间戳和结束时间戳
$beginThismonth=strtotime(date("Y",time())."-1"."-1");
$endThismonth=strtotime(date("Y",time())."-12"."-31");
strtotime(date("Y-m-d", strtotime("-1 month"))); //最近一个月,最近30天
strtotime(date('Y-m-d', strtotime('-29 day')))
PHP mktime() 函数用于返回一个日期的 Unix 时间戳。
语法
mktime(hour,minute,second,month,day,year,is_dst)
| 参数 | 描述 |
|---|---|
| hour | 可选。规定小时。 |
| minute | 可选。规定分钟。 |
| second | 可选。规定秒。 |
| month | 可选。规定用数字表示的月。 |
| day | 可选。规定天。 |
| year | 可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 PHP 5 中已经不存在这个限制了。 |
| is_dst |
可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。 自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。 |
用法
参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。
参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。
注意在 PHP 5.1 之前,如果该函数的参数非法,则会返回 false。
另外需要注意的是该函数对于日期运算和验证非常有用。它可以自动校正越界的输入,如:
echo(date("M-d-Y",mktime(0,0,0,12,36,2001)));
将输出结果如:
Jan-05-2002
php 获取今日、昨日、上周、本周、本月、上月、今年的起始时间戳和结束时间戳的方法的更多相关文章
- php 获取今日、昨日、本周,上周、本月,上月,季度的起始时间戳和结束时间戳的方法
php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...
- (转)php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime. 下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起 ...
- php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...
- php获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...
- php获取今日开始时间戳和结束时间戳
1.php获取今日开始时间戳和结束时间戳 $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0 ...
- PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
本文实例讲述了PHP获取日期对应星期.一周日期.星期开始与结束日期的方法.分享给大家供大家参考,具体如下: /* * 获取日期对应的星期 * 参数$date为输入的日期数据,格式如:2018-6-22 ...
- Java获取当天、当前月、当前年(今年)的开始和结束时间戳
最近在做统计相关的功能的时候涉及到了获取当天的开始和结束的时间戳.当月和当年的开始结束时间戳,特此记录,以作备忘. 相关代码 package com.lingyejun.authenticator; ...
- vue项目中使用日期获取今日,昨日,上周,下周,上个月,下个月的数据
今日公司项目接口要求获取动态的上周数据,经过不断的寻找,找到此方法. 该方法使用的是Moment.js JavaScript日期处理类库 一:安装依赖 npm install moment --sav ...
- SQL报表语句;SQL获取今日、本周、本月数据
SQL报表语句 SQL获取今日.本周.本月数据 本日:select * from table where datediff(dd,C_CALLTIME,getdate())=0 --C ...
随机推荐
- 让运行着的ASP.NET Web程序重新启动
在运行中的Web程序,会随时的监测这web.config文件的变化,只要web.config文件有变动,那么Application就会重新启动.所以,在一个工具类中我们可以封装一个方法,该方法用来重新 ...
- linux 编译 'aclocal-1.14' is missing on your system
centos编译出现:类似情况: $tar -xvf libpcap-1.0.0.tar.gz $cd libpcap-1.0.0.tar.gz $./configure ...
- ecshop 前台分页
在当前需要分页的if最后div里面加入这句, <!-- #BeginLibraryItem "/library/pages.lbi" --><!-- #EndLi ...
- sqli-labs(三)
第五关:这关的重点是有联合查询的注入漏洞,但是页面不会显示查询信息,但是会有报错信息显示在页面上 这关是双查询注入,其实用报错注入和盲注都是可以注入的,但是我觉得这个双查询注入还是很有意思的,所以这关 ...
- C语言记录汇总
uint32_t 转载自:http://blog.sina.com.cn/s/blog_6aea878e0100tl0f.html体会1>. 在写程序时注意"无符号类型&quo ...
- Nginx性能调优
[调优]Nginx性能调优 一.Nginx优化配置 1.主配置文件优化:# vi /usr/local/nginx/conf/nginx.conf------------------------- ...
- Javascript-数据类型转换 、 运算符和表达式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JS实例3
window.setInterval("Time()",1); function Time() { var date = new Date();//当前时间函数 var n = d ...
- linux的swap相关
linux的系统采用的内存方案一般都是 物理内存+swap.物理内存供日常使用,swap用来救急. 但在实际使用的过程中,发现有时候物理内存还没被完全占用的情况下,已经开始使用swap了.而这时候,由 ...
- 找不到System.Web.Optimization命名空间
找不到System.Web.Optimization命名空间,无法完成BundleConfig.cs内容的添加. 解决方法如下:打开程序包管理控制台,在控制台中输入:Install-PackageMi ...