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. arm的开发工具

    网上有free的ide可以开发arm cortex的芯片,可以参考List of ARM Cortex-M development tools,Wikipedia,里面有emIDE,embitz等,虽 ...

  2. poj3617 best cow line(贪心题)

    Best Cow Line Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 32687   Accepted: 8660 De ...

  3. Linux下ioctl函数理解

    一. 什么是ioctl ioctl是设备驱动程序中对设备的I/O通道进行管理的函数.所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率.马达的转速等等.它的调用个数如下: i ...

  4. UOJ 152 汉诺塔 分治

    题目链接 题意: 有三根编号为\((1, \, 2, \, 3)\)的柱子,然后第一根柱子上有编号为\(1 \sim n(n \leq 10000)\)的盘子,从上到下第\(i\)个盘子的编号是\(A ...

  5. Python虚拟机函数机制之无参调用(一)

    PyFunctionObject对象 在Python中,任何一个东西都是对象,函数也不例外.函数这种抽象机制,是通过一个Python对象——PyFunctionObject来实现的 typedef s ...

  6. adb -a server nodaemon,设备一直显示 offline,而 adb devices 一直显示 device【已解决】

    1. adb -a server nodaemon 一直显示 offline 2. adb devices 一直显示 device 谷歌 和 度娘了一圈,未寻得解决办法 # 解决方法 问题已解决,使用 ...

  7. python学习-- Django传递数据给JS

    var List = {{ List|safe }};//safe 必须存在

  8. Leetcode 483.最小好进制

    最小好进制 对于给定的整数 n, 如果n的k(k>=2)进制数的所有数位全为1,则称 k(k>=2)是 n 的一个好进制. 以字符串的形式给出 n, 以字符串的形式返回 n 的最小好进制. ...

  9. [python学习篇][廖雪峰][2]函数式编程

    函数名也是变量: >>> f = abs >>> f(-10) 10 然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就 ...

  10. RabbitMQ与PHP(一)

    RabbitMQ与PHP(一) 项目中使用RabbitMQ作为队列处理用户消息通知,消息由前端PHP代码产生,处理消息使用Python,这就导致代码一致性问题,调整消息定义时需要PHP和Python都 ...