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. Linux学习-透过 systemctl 管理服务

    透过 systemctl 管理单一服务 (service unit) 的启动/开机启动与观察状态 一般来说,服务的启动有两个阶段,一 个是『开机的时候设定要不要启动这个服务』, 以及『你现在要不要启动 ...

  2. kettle-批量同步表数据

    一.实验目标 利用kettle实现从mysql数据库中的dbf库批量同步表到dbm库(全量同步) 二.实验环境 dbf  库中表f1.f2.f3  .f1中1条数据,f2中100条数据,f3中2条数据 ...

  3. Python中的魔术方法详解(双下方法)

    介绍 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”,中文称『魔术方法』,例如类的初始化方法 __init__ ,Python中所有的魔术方法均在官方文档中 ...

  4. 光学字符识别OCR-6 光学识别

    经过前面的文字定位和文本切割,我们已经能够找出图像中单个文字的区域,接下来可以建立相应的模型对单字进行识别. 模型选择         在模型方面,我们选择了深度学习中的卷积神经网络模型,通过多层卷积 ...

  5. HashMap的C++实现

    #include <iostream> #include <cstring> #include <string> typedef unsigned int SIZE ...

  6. bzoj3172 luogu3966 [TJOI2013]单词

    蒟蒻也能写出来的AC代码!这题是AC自动机模板题.插入单词时用一个没出现过的字符隔开就行了. 一些细节请看注释 #include <iostream> #include <cstri ...

  7. LINQ 的查询执行何时是延迟执行,何时是立即执行,以及查询的复用

    延迟执行的经典例子: 我们用 select ++i 就可以看到在foreach 时候,查询才被执行. public static void Linq99(){    int[] numbers = n ...

  8. day03_02 Python版本的选择

    总结:python2.x是遗产(过时),python3.x是现在和未来的语言 In summary : Python 2.x is legacy, Python 3.x is the present ...

  9. Spring c3p0连接池配置

    数据库连接池 数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”.预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去.我们可以通过设定连接 ...

  10. redhat linux 从/home目录扩展空间至/根目录

    查看分区大小 [root@easdb01 ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_easdb01-lv_ro ...