首页 > 技术文章 > php获取当前月与上个月月初及月末时间戳的方法

lazb 2017-12-06 20:51 原文

 

php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime。下面首先还是直奔主题以示例说明如何使用 mktime 获取今日、昨日、上周、本月的起始时间戳和结束时间戳,然后在介绍一下 mktime 函数作用和用法。

 

 1 01    //php获取今日开始时间戳和结束时间戳
 2 02    $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
 3 03    $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
 4 04    //php获取昨日起始时间戳和结束时间戳
 5 05    $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
 6 06    $endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
 7 07    //php获取上周起始时间戳和结束时间戳
 8 08    $beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
 9 09    $endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
10 10    //php获取本月起始时间戳和结束时间戳
11 11    $beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
12 12    $endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));

 

 

 

 

switch ($exchange_time) {

    case 1 : // 本月

    // 本月起始时间:

    $begin_time = date ( "Y-m-d H:i:s", mktime ( 0, 0, 0, date ( "m" ), 1, date ( "Y" ) ) );

    $end_time = date ( "Y-m-d H:i:s", mktime ( 23, 59, 59, date ( "m" ), date ( "t" ), date ( "Y" ) ) );

    break;

    case 2 : // 上个月

    // 上个月的起始时间:

    $begin_time = date('Y-m-01 00:00:00',strtotime('-1 month'));

$end_time = date("Y-m-d 23:59:59", strtotime(-date('d').'day'));

    break;

    case 3 : // 上上个月

    $begin_time =  date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-2,1,date("Y")));

    $end_time =  date("Y-m-d H:i:s",mktime(23,59,59,date("m")-1 ,0,date("Y")));

    break;

    }


    



    echodate("Ymd",strtotime("now")),"\n";

    echodate("Ymd",strtotime("-1 week Monday")),"\n";

    echodate("Ymd",strtotime("-1 week Sunday")),"\n";

    echodate("Ymd",strtotime("+0 week Monday")),"\n";

    echodate("Ymd",strtotime("+0 week Sunday")),"\n";

 

    echo"*********第几个月:";

    echodate('n');

    echo"*********本周周几:";

    echodate("w");

    echo"*********本月天数:";

    echodate("t");

    echo"*********";

 

    echo'<br>上周起始时间:<br>';

    echodate("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))),"\n";

    echodate("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))),"\n";

    echo'<br>本周起始时间:<br>';

    echodate("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))),"\n";

    echodate("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))),"\n";

 

    echo'<br>上月起始时间:<br>';

    echodate("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y"))),"\n";

    echodate("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))),"\n";

    echo'<br>本月起始时间:<br>';

    echodate("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y"))),"\n";

    echodate("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y"))),"\n";

 

    $season= ceil((date('n'))/3);//当月是第几季度

    echo'<br>本季度起始时间:<br>';

    echodate('Y-m-d H:i:s',mktime(0, 0, 0,$season*3-3+1,1,date('Y'))),"\n";

    echodate('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'))),"\n";

 

    $season= ceil((date('n'))/3)-1;//上季度是第几季度

    echo'<br>上季度起始时间:<br>';

    echodate('Y-m-d H:i:s',mktime(0, 0, 0,$season*3-3+1,1,date('Y'))),"\n";

    echodate('Y-m-d H:i:s',mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$seas))

  

 

 

本人自己总结    获取   月初和月末时间   

 1         $y = date('Y',time());
 2         $m = date('m',time());
 3         
 4         $t1 = strtotime($y.'-'.$m.'-1 00:00:00');//本月初   获取时间戳
 5         //$t2 = strtotime(date('Y-m-t'));//获取本月末  方法2
 6         $t2 = strtotime($y.'-'.($m).'-'.date('t'));//本月末
 7         
 8         $time1=date('Y-m-d',$t1);//把本月初时间戳   换成ymd格式
 9         $time2=date('Y-m-d',$t2);//把本月末时间戳   换成ymd格式
10         $time_where = "between '".$time1."' and  '".$time2."' group by add_yy.id";

 

 

 

 

PS:本站还提供了一个Unix时间戳转换工具,包含了各种常见语言针对时间戳的操作方法,提供给大家参考:

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php , 时间戳 , 当前月 , 上个月 , 月初 月末 php 获取上个月时间戳、php 上个月时间戳、php 上个月的时间戳、上个月时间戳、db2 求上个月月末日期,以便于您获取更多的相关知识。

 

推荐阅读