zoukankan      html  css  js  c++  java
  • 获取上一周, 本周, 下一周 的开始时间和结束时间.

    以星期一作为 一周的开始,  以 星期日 作为 一周的结束.

     1 date_default_timezone_set('PRC');
     2 
     3 
     4 function getWeek()
     5 {
     6     //本周:
     7     $thisWeek['start'] = mktime(0, 0, 0, date('m'), date('d')-date('w')+1, date('Y'));
     8     $thisWeek['end'] = mktime(23, 59, 59, date('m'), date('d')+7-date('w'), date('Y'));
     9     $thisWeek['startStr'] = date('Y-m-d H:i:s', $thisWeek['start']);
    10     $thisWeek['endStr'] = date('Y-m-d H:i:s', $thisWeek['end']);
    11     
    12     //上一周:
    13     $beforeWeek['start'] = mktime(0, 0, 0, date('m'), date('d')-date('w')+1-7, date('Y'));
    14     $beforeWeek['end'] = mktime(23, 59, 59, date('m'), date('d')+7-date('w')-7, date('Y'));
    15     $beforeWeek['startStr'] = date('Y-m-d H:i:s', $beforeWeek['start']);
    16     $beforeWeek['endStr'] = date('Y-m-d H:i:s', $beforeWeek['end']);
    17    
    18     //下一周:
    19     $nextWeek['start'] = mktime(0, 0, 0, date('m'), date('d')-date('w')+1+7, date('Y'));
    20     $nextWeek['end'] = mktime(23, 59, 59, date('m'), date('d')+7-date('w')+7, date('Y'));
    21     $nextWeek['startStr'] = date('Y-m-d H:i:s', $nextWeek['start']);
    22     $nextWeek['endStr'] = date('Y-m-d H:i:s', $nextWeek['end']);
    23     
    24     $week['beforeWeek'] = $beforeWeek;
    25     $week['thisWeek'] = $thisWeek;
    26     $week['nextWeek'] = $nextWeek;
    27     return $week;
    28     
    29     
    30 }
    31 
    32 var_dump(getWeek());

    当前时间: 2017-05-03:

     1 array(3) {
     2   ["beforeWeek"]=>
     3   array(4) {
     4     ["start"]=>
     5     int(1492963200)
     6     ["end"]=>
     7     int(1493567999)
     8     ["startStr"]=>
     9     string(19) "2017-04-24 00:00:00"
    10     ["endStr"]=>
    11     string(19) "2017-04-30 23:59:59"
    12   }
    13   ["thisWeek"]=>
    14   array(4) {
    15     ["start"]=>
    16     int(1493568000)
    17     ["end"]=>
    18     int(1494172799)
    19     ["startStr"]=>
    20     string(19) "2017-05-01 00:00:00"
    21     ["endStr"]=>
    22     string(19) "2017-05-07 23:59:59"
    23   }
    24   ["nextWeek"]=>
    25   array(4) {
    26     ["start"]=>
    27     int(1494172800)
    28     ["end"]=>
    29     int(1494777599)
    30     ["startStr"]=>
    31     string(19) "2017-05-08 00:00:00"
    32     ["endStr"]=>
    33     string(19) "2017-05-14 23:59:59"
    34   }
    35 }

    查看:

     

  • 相关阅读:
    HTTP和SOAP完全就是两个不同的协议
    RabbitMQ七:交换机类型Exchange Types--Fanout 介绍
    日志级别简述
    RabbitMQ六:通过routingkey模拟日志
    http协议无状态中的 "状态" 到底指的是什么?!
    MySQL-时间(time、date、datetime、timestamp和year)
    API系列一:REST和RESTful认识
    Ref 和 Out 区别(演练代码)
    RabbitMQ五:生产者--队列--多消费者
    RabbitMQ四:生产者--队列--消费者
  • 原文地址:https://www.cnblogs.com/cbza/p/6803270.html
Copyright © 2011-2022 走看看