if($filter['mode']) {

            switch ($filter['mode']) {
case 1://今天的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0, date('m'),date('d'),date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date('m'),date('d'),date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 2://昨天的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0, date('m'),date('d'),date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date('m'),date('d'),date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 3://本周的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 4://上周的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+6,date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w"),date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 5://当月的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 6://上月的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m") -1,1,date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),0,date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 7://本季的数据
$season = ceil((date('n'))/3);//当月是第几季度
$time_start = date('Y-m-d H:i:s', mktime(0, 0, 0,$season*3-3+1,1,date('Y')));
$time_end = date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y')));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 8://上季的数据
$season = ceil((date('n'))/3) - 1;//当月是第几季度
$time_start = date('Y-m-d H:i:s', mktime(0, 0, 0,$season*3-3+1,1,date('Y')));
$time_end = date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y')));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 9://今年的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,1,1,date("Y")));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,12,date('t'),date("Y")));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
case 10://去年的数据
$time_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,1,1,date("Y") -1));
$time_end = date("Y-m-d H:i:s",mktime(23,59,59,12,date('t'),date("Y") -1));
$ex_where .= ' and dt >= ' . strtotime($time_start) . ' and dt <= ' . strtotime($time_end);
break;
default://所有
break;
}
}

php 打印今天,昨天,本周,上周,当月,上月,本季,上季,今年,去年数据的更多相关文章

  1. mysql查询昨天本周上周上月

    昨天 $yestoday = date("Y-m-d 00:00:00",strtotime('-1day'));$today = date("Y-m-d 00:00:0 ...

  2. 用php获取本周,上周,本月,上月,本季度日期的代码

    echo date("Ymd",strtotime("now")), "\n"; echo date("Ymd",str ...

  3. JS 时间 获取 当天,昨日,本周,上周,本月,上月

    调用 setTimeRange (2); function  setTimeRange (v) { var fmt = 'YYYY-MM-DD HH:mm'; var now = new Date() ...

  4. Asp.net C# 获取本周上周本月上月本年上年第一天最后一天时间大全

    DateTime dt = DateTime.Now; int weeknow = Convert.ToInt32(DateTime.Now.DayOfWeek); ) * weeknow + ; D ...

  5. vue项目中使用日期获取今日,昨日,上周,下周,上个月,下个月的数据

    今日公司项目接口要求获取动态的上周数据,经过不断的寻找,找到此方法. 该方法使用的是Moment.js JavaScript日期处理类库 一:安装依赖 npm install moment --sav ...

  6. Mysql 获取当天,昨天,本周,本月,上周,上月的起始时间

    转自: http://www.cppblog.com/tx7do/archive/2017/07/19/215119.html -- 今天 SELECT DATE_FORMAT(NOW(),'%Y-% ...

  7. [moka同学笔记]php 获取时间(今天,昨天,三天内,本周,上周,本月,三年内,半年内,一年内,三年内)

    <?php /** * php 获取时间(今天,昨天,三天内,本周,上周,本月,三年内,半年内,一年内,三年内) * * author:ihelloworld2010@gmail.com * d ...

  8. mysql查询今天、昨天、上周

    mysql查询今天.昨天.上周 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE ...

  9. Oracle 获取本周、本月、本季、本年的第一天和最后一天

    Oracle 获取本周.本月.本季.本年的第一天和最后一天 --本周 select trunc(sysdate, 'd') + 1 from dual; select trunc(sysdate, ' ...

  10. mysql查询今天,昨天,近7天,近30天,本月,上一月数据

    近期项目中用到了查询当月数据记录的功能,最初的想法是在逻辑业务里构造好时间段进行查询,当写sql语句时感觉挺麻烦.所以就到网上搜索了一下,看看是不是能有简单的方法.果然.网络资源非常强大.以下结合我的 ...

随机推荐

  1. 数字pid笔记(1)

    针对stm32中可以如下实现: p->IncrementVal = (p->Kp * (p->err - p->err_next)) + (p->Ki * p->e ...

  2. 蓝牙nrf52832的架构和开发(转载)

    相比TI的CC254X.DIALOG的DA1458X,nordic推出的nrf51822和nrf52832在架构和开发商都有自己独特的地方.这几颗产品都是蓝牙低功耗芯片.DA1458X使用OTP硬件架 ...

  3. Java中的数据类型和引用

    JAVA数据类型分primitive数据类型和引用数据类型. Java中的primitive数据类型分为四类八种.primitive也不知道怎么翻译比较贴切, 暂且叫他基本数据类型吧, 其实直接从英文 ...

  4. T-SQL中的indexof函数

    在C#字符串中查找字符有indexof方法,那么在T-SQL与之相对应的是CHARINDEX方法,其语法为CHARINDEX(要查找的字符,字符串),返回一个数字. CHARINDEX(',','aa ...

  5. 在O(1)时间内删除链表结点 【微软面试100题 第六十题】

    题目要求: 给定链表的头指针和一个结点指针,在O(1)时间删除该结点. 参考资料:剑指offer第13题. 题目分析: 有几种情况: 1.删除的结点是头结点,且链表不止一个结点: 2.删除的结点是头结 ...

  6. 全链路spring cloud sleuth+zipkin

    http://blog.csdn.net/qq_15138455/article/details/72956232 版权声明:@入江之鲸 一.About ZipKin please google 二. ...

  7. 【NOIP2017】逛公园 拆点最短路+拓扑(记忆化搜索

    题目描述 策策同学特别喜欢逛公园.公园可以看成一张N个点M条边构成的有向图,且没有 自环和重边.其中1号点是公园的入口,N号点是公园的出口,每条边有一个非负权值, 代表策策经过这条边所要花的时间. 策 ...

  8. Linux中TTY是什么意思

    终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备.tty是Teletype的缩写.Teletype是最早出现的一种终端 设备,很象电传打字机(或者说就是),是由Telety ...

  9. [automator篇][5]Viewer 提示connect to adb fail

    7. UIAutomatorViewer提示: Unable to connect to adb. Check if adb is installed correctly 解决,sdk升级到了25产生 ...

  10. BZOJ1880 [Sdoi2009]Elaxia的路线 【最短路 + dp】

    题目 最近,Elaxia和w的关系特别好,他们很想整天在一起,但是大学的学习太紧张了,他们 必须合理地安排两个人在一起的时间.Elaxia和w每天都要奔波于宿舍和实验室之间,他们 希望在节约时间的前提 ...