php 日期算法,php日期时间计算,转载

本文详细介绍了PHP中用于日期时间计算的各种函数和方法,包括获取今天、昨天、明天、一周后的日期,以及指定日期的起止时间戳等。还提供了一个函数用于生成指定日期范围内的所有日期。同时,文章提供了计算上个月今天的方法,并讨论了如何根据需求调整日期。这些函数对于PHP开发者在处理日期时间操作时非常实用。
摘要由CSDN通过智能技术生成

php日期时间计算,转载

//php获取今天日期

date("Y-m-d");

//php获取昨天日期

date("Y-m-d",strtotime("-1 day"))

//php获取明天日期

date("Y-m-d",strtotime("+1 day"))

//php获取一周后日期

date("Y-m-d",strtotime("+1 week"))

//php获取一周零两天四小时两秒后时间

date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds"))

//php获取下个星期四日期

date("Y-m-d",strtotime("next Thursday"))

//php获取上个周一日期

date("Y-m-d",strtotime("last Monday"))

//php获取一个月前日期

date("Y-m-d",strtotime("last month"))

//php获取一个月后日期

date("Y-m-d",strtotime("+1 month"))

//php获取十年后日期

date("Y-m-d",strtotime("+10 year"))

//php获取今天起止时间戳

mktime(0,0,0,date('m'),date('d'),date('Y'));

mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;

//php获取昨天起止时间戳

mktime(0,0,0,date('m'),date('d')-1,date('Y'));

mktime(0,0,0,date('m'),date('d'),date('Y'))-1;

//php获取上周起止时间戳

mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));

mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));

//php获取本月起止时间戳

mktime(0,0,0,date('m'),1,date('Y'));

mktime(23,59,59,date('m'),date('t'),date('Y'));

计算起止日期(列出起止日期区间所有日期)

$data=$this->date_range(date('Y-m-d',$time2),date('Y-m-d',$time1));

//起止日期计算

function date_range($first, $last, $step = '+1 day', $format = 'Y-m-d')

{

$dates   = array();

$current = strtotime($first);

$last    = strtotime($last);

while ($current <= $last) {

$dates[] = date($format, $current);

$current = strtotime($step, $current);

}

return $dates;

}

/**

* 计算上一个月的今天,如果上个月没有今天,则返回上一个月的最后一天

* @param type $time

* @parma key 传入加减的月份数字

* @return type

*/

function last_month_today($time,$key=''){

$last_month_time = mktime(date("G", $time), date("i", $time),

date("s", $time), date("n", $time), 0, date("Y", $time));

$last_month_t =  date("t", $last_month_time);

if ($last_month_t 

return date("Y-m-t H:i:s", $last_month_time);

}

if(isset($key)&&!empty($key)){

return date(date("Y-m",strtotime("-".$key. "month")) . "-d", $time);

}else{

return date(date("Y-m", $last_month_time) . "-d", $time);

}

}

©著作权归作者所有:来自51CTO博客作者liang3391的原创作品,如需转载,请注明出处,否则将追究法律责任

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值