PHP获取昨天、明天、本月、上个月,本年 等时间函数操作

<?php

date_default_timezone_set('PRC'); //默认时区,否则开始时间会相差8个小时

//取某个日期的前一天
date('Y-m-d', strtotime('2021-05-12 -1 day'));
date('Y-m-d', (strtotime('2021-05-12')-24*60*60));

//取某个日期的后一天
date('Y-m-d', strtotime('2021-05-12 +1 day'));

//取某个时间的前一小时
date('Y-m-d H:i:s', strtotime('2021-05-12 08:08:08 -1 hour'));

//取某个日期的后一月
date('Y-m-d', strtotime('2021-05-31 +1 month'));//这个的结果是2021-07-01,不是2021-06-30哦

//今天
date('Y-m-d',time());

//昨天
date('Y-m-d',strtotime('-1 day'));

//明天
date('Y-m-d',strtotime('+1 day'));

//一周后
date('Y-m-d',strtotime('+1 week'));

//一周零两天六小时八秒后
date('Y-m-d G:H:s',strtotime('+1 week 2 days 6 hours 8 seconds'));

//下个星期一
date('Y-m-d',strtotime('next Monday'));

//上个周六
date('Y-m-d',strtotime('last Saturday'))";

//一个月前
date('Y-m-d',strtotime('last month'));

//一个月后
date('Y-m-d',strtotime('+1 month'));

//十年后
date('Y-m-d',strtotime('+10 year'));

//mktime(小时,分,秒,月,天):返回一个日期的 UNIX 时间戳
//hour、minute、second、month、day

//获取今日开始时间戳和结束时间戳
$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;

//获取昨日起始时间戳和结束时间戳
$beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;

//获取本周起始时间戳和结束时间戳 
$beginThisweek = mktime(0,0,0,date('m'),date('d')-date('w')+1,date('y'));
$endThisweek=time();
 
//获取上周起始时间戳和结束时间戳
$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
  
//获取本月起始时间戳和结束时间戳
$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
$endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));

//上个月的起始时间:
$begin_time = strtotime(date('Y-m-01 00:00:00',strtotime('-1 month')));
$end_time = strtotime(date("Y-m-d 23:59:59", strtotime(-date('d').'day')));

//$num 个月后的月份的起始时间
$i = 1;
$num = '2020-07-01 00:00:00 +' . $i . ' month';
$start = date('Y-m-01 00:00:00',strtotime($num));//起
$end = date("Y-m-d 23:59:59", strtotime(-date('d').'day'));//始
$end = date('Y-m-t 23:59:59', strtotime($num));//始
 
//获取本年起始时间
$begin_year = strtotime(date("Y",time())."-1"."-1"); //本年开始
$end_year = strtotime(date("Y",time())."-12"."-31"); //本年结束

//现在的时间到第二天凌晨相差的时间戳
$time = (strtotime(date('Y-m-d'))+3600*24) - time() ; 

date()函数格式化本地日期和时间,并返回格式化的日期字符串。

date(format,timestamp)   的参数:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值