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

 01    //php获取今日开始时间戳和结束时间戳
02 $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
03 $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
04 //php获取昨日起始时间戳和结束时间戳
05 $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
06 $endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
07 //php获取上周起始时间戳和结束时间戳
08 $beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
09 $endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
10 //php获取本月起始时间戳和结束时间戳
11 $beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
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))

  

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

         $y = date('Y',time());
$m = date('m',time()); $t1 = strtotime($y.'-'.$m.'-1 00:00:00');//本月初 获取时间戳
//$t2 = strtotime(date('Y-m-t'));//获取本月末 方法2
$t2 = strtotime($y.'-'.($m).'-'.date('t'));//本月末 $time1=date('Y-m-d',$t1);//把本月初时间戳 换成ymd格式
$time2=date('Y-m-d',$t2);//把本月末时间戳 换成ymd格式
$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 求上个月月末日期,以便于您获取更多的相关知识。

php获取当前月与上个月月初及月末时间戳的方法的更多相关文章

  1. php取上个月月初和月末时间戳

    $thismonth = date('m');$thisyear = date('Y');if ($thismonth == 1) { $lastmonth = 12; $lastyear = $th ...

  2. php获取当前月月初至月末的时间戳,上个月月初至月末的时间戳

    当前月 <?php $thismonth = date('m'); $thisyear = date('Y'); $startDay = $thisyear . '-' . $thismonth ...

  3. laravel 获取当前月,当前星期,当天起始时间方法

    获取当前月起始时间: 1. $time=time(); $start=date('Y-m-01',$time);//获取指定月份的第一天 $end=date('Y-m-t',$time); //获取指 ...

  4. C# 获取当前月的月初和月末

    /// <summary> /// 获取当前月的月末日期 /// </summary> /// <returns></returns> public s ...

  5. java获取当前月第一天和最后一天,上个月第一天和最后一天

    package com.test.packager; import java.text.ParseException; import java.text.SimpleDateFormat; impor ...

  6. Date小技巧:set相关操作及应用_获取当前月(季度/年)的最后一天

    set操作还是有不少的,具体见 http://www.w3school.com.cn/jsref/jsref_obj_date.asp, 今天我就只说 setFullYear, setMonth, s ...

  7. moment 获取当前月日历

    获取当前月日历 <template> <div id="calendar"> <div class="top">{{date ...

  8. C# 获取当前月第一天和最后一天 计算两个日期差多少天

    获取当前月的第一天和最后一天 DateTime now = DateTime.Now; DateTime firstDay = ); DateTime lastDay = firstDay.AddMo ...

  9. C# 获取当前月第一天和最后一天

    废话不多说,直接上代码 //先获取当前时间 DateTime now = DateTime.Now; //获取当前月的第一天 DateTime d1 = new DateTime(now.Year, ...

随机推荐

  1. .NET程序集引用COM组件MSScriptControl所遇到的问题

    问题描述:为了在C#中执行js脚本,在一个目标平台编译为Any Cpu的.NET程序集中引用了MSScriptControl组件,在winform程序中,调用这个程序集中的执行js的方法,没有任何问题 ...

  2. <c:forEach items="${list}" var="tt" varStatus="status"> 的相关大小长度

    <c:forEach items="${list}" var="tt" varStatus="status"> ${status ...

  3. 扩展 lua require 的行为

    扩展 lua require 的行为 来源 https://blog.codingnow.com/2015/10/lua_require_env.html 今天同事提了个需求,他希望可以给部分 lua ...

  4. HDU 5242 Game(三个贪心)

    Game Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  5. Marriage is Stable

    Marriage is Stable Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...

  6. linux dig 命令

    dig 命令主要用来从 DNS 域名服务器查询主机地址信息. 查询单个域名的 DNS 信息 dig 命令最典型的用法就是查询单个主机的信息. $ dig baidu.com dig 命令默认的输出信息 ...

  7. phonegap与H5中的接口对比

    接口 HTML5 phonegap 差异 地理定位 geolocation 单次定位: navigator.geolocation.getCurrentPosition(Success, [error ...

  8. vsftpd安装及虚拟用户配置

    服务器环境:CentOS6.9 Linux 2.6.32-696.10.1.el6.x86_64 安装vsftpd.db4.db4-utils # yum -y install vsftpd db4 ...

  9. 拓扑排序 HDU - 5695

    众所周知,度度熊喜欢各类体育活动. 今天,它终于当上了梦寐以求的体育课老师.第一次课上,它发现一个有趣的事情.在上课之前,所有同学要排成一列, 假设最开始每个人有一个唯一的ID,从1到NN,在排好队之 ...

  10. Maven元素解析——pom.xml

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628201.html  一个pom.xml中包含了许多标签,各个标签是对项目生命周期.依赖管理的配置.常用的主 ...