php获取 本月 本周 或者 下月 下周的 开始时间 结束时间

<?php
$now_time = time();
$date=date("Y-m-d",$now_time);
function get_date($date,$t=‘d‘,$n=0)
{
    if($t==‘d‘){
       $firstday = date(‘Y-m-d 00:00:00‘,strtotime("$n day"));
       $lastday = date("Y-m-d 23:59:59",strtotime("$n day"));
    }elseif($t==‘w‘){
       if($n!=0){$date = date(‘Y-m-d‘,strtotime("$n week"));}
       $lastday = date("Y-m-d 00:00:00",strtotime("$date Sunday"));
       $firstday = date("Y-m-d 23:59:59",strtotime("$lastday -6 days"));
    }elseif($t==‘m‘){
       if($n!=0){$date = date(‘Y-m-d‘,strtotime("$n months"));}
       $firstday = date("Y-m-01 00:00:00",strtotime($date));
       $lastday = date("Y-m-d 23:59:59",strtotime("$firstday +1 month -1 day"));
    }
    return array($firstday,$lastday);
}
$day1   = get_date($date,‘d‘);
$day2   = get_date($date,‘d‘,-1);
$week1 = get_date($date,‘w‘);
$week2 = get_date($date,‘w‘,-1);
$month1 = get_date($date,‘m‘);
$month2 = get_date($date,‘m‘,-1);
echo ‘<pre>‘;
print_r($day1);//今天
print_r($day2);//昨天
print_r($week1);//这周
print_r($week2);//上周
print_r($month1);//这月
print_r($month2);//上月
echo ‘</pre>‘;

  

时间: 2024-12-29 09:55:24

php获取 本月 本周 或者 下月 下周的 开始时间 结束时间的相关文章

js获取本月,本季度,上个季度,本周,上周的起始和结束时间

1 /* 获得某月的天数 */ 2 function getMonthDays(myMonth) { 3 var nowYear = new Date().getFullYear(); //当前年 4 var monthStartDate = new Date(nowYear, myMonth, 1); 5 var monthEndDate = new Date(nowYear, myMonth + 1, 1); 6 var days = (monthEndDate - monthStartDa

php 本周开始时间和结束时间;本月开始时间结束时间;上月开始时间结束时间

<?php /** * 功能:取得给定日期所在周的开始日期和结束日期 * 参数:$gdate 日期,默认为当天,格式:YYYY-MM-DD * $first 一周以星期一还是星期天开始,0为星期天,1为星期一 * 返回:数组array("开始日期", "结束日期"); * */ function aweek($gdate = "", $first = 0){ if(!$gdate) $gdate = date("Y-m-d&quo

javascript 中的时间戳转换时间 根据时间字符判断星期几 根据开始时间结束时间获取中间间隔时间 来自转发

//时间戳转换时间      function timedat(res){   //res 为传入的时间戳   例:1509091800000 var time = new Date(res); var y = time.getFullYear(); var m = time.getMonth()+1; var d = time.getDate(); return y+'-'+m+'-'+d;    //返回格式  "2017-10-27" 字符串    }; //根据时间判断星期几 

sql 获取当天开始时间 结束时间

2010-06-21 00:00:00.000 SELECT dateadd(ms,0,DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)) 2010-06-21 23:59:59.997 SELECT dateadd(ms,-3,DATEADD(dd, DATEDIFF(dd,-1,getdate()), 0)) ms步频是3 当月第一天 SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 当月最后一天 SELECT  

php 根据给定的年份和月份获取该年份该月份的起始和结束时间

function getShiJianChuo($nian=0,$yue=0){ if(empty($nian) || empty($yue)){ $now = time(); $nian = date("Y",$now); $yue = date("m",$now); } $time['begin'] = mktime(0,0,0,$yue,1,$nian); $time['end'] = mktime(23,59,59,($yue+1),0,$nian); re

php 获取指定月份的开始结束时间

/** * * 获取指定年月的开始和结束时间戳 * * @param int $y 年份 * @param int $m 月份 * @return array(开始时间,结束时间) */ function mFristAndLast($y=0,$m=0){ $y = $y ? $y : date('Y'); $m = $m ? $m : date('m'); $d = date('t', strtotime($y.'-'.$m)); return array("firsttime"=&

C#获取本周、上周、本月、上月、本季度、上季度、本年、上一年起始时间和结束时间

[参考] http://blog.csdn.net/livening/article/details/6049341 http://zhidao.baidu.com/question/378600365.html http://www.cnblogs.com/roy117/archive/2008/03/25/1121584.html 楼上几层的代码都太多了,不用那么复杂. 先跟你说一下原理: 1.国际上的WeekDay是从周日到周六的顺序 2.再说C#的DayOfWeek枚举值是依次从0到6,

* 获取本周、本季度、本月、上月的开始日期、结束日期

/** * 获取本周.本季度.本月.上月的开始日期.结束日期 */ var now = new Date();                    //当前日期 var nowDayOfWeek = now.getDay();         //今天本周的第几天 var nowDay = now.getDate();              //当前日 var nowMonth = now.getMonth();           //当前月 var nowYear = now.getY

JS获取本周、本季度、本月、上月的开始日期、结束日期

/** * 获取本周.本季度.本月.上月的开始日期.结束日期 */var now = new Date(); //当前日期 var nowDayOfWeek = now.getDay(); //今天本周的第几天 var nowDay = now.getDate(); //当前日 var nowMonth = now.getMonth(); //当前月 var nowYear = now.getYear(); //当前年 nowYear += (nowYear < 2000) ? 1900 : 0