php中如何获取最近六个月每个月的起始时间和结束时间

php中如何获取最近六个月每个月的起始时间和结束时间,第1张

你要实现的是不是当前月份和当前月份往前5个月,每个月的第一天是几号号最后一天是几号?如果是的话,我写了一个 能实现你的需求。你的问题让我好纠结。

$currentTime = time();

$cyear = floor(date("Y",$currentTime));

$cMonth = floor(date("m",$currentTime));

 

for($i=0;$i<6;$i++){

$nMonth = $cMonth-$i;

$cyear = $nMonth == 0  ($cyear-1) : $cyear;

$nMonth = $nMonth <= 0  12+$nMonth : $nMonth;

$date = $cyear"-"$nMonth"-1";

$firstday = date('Y-m-01', strtotime($date));

    $lastday = date('Y-m-t', strtotime($date));

echo $cyear"年"$nMonth"月";

echo "第一天:"$firstday;

echo "最后一天:"$lastday,"<br>";

}

用date函数格式化一下就好了!

echo date("Y-m-d",time());

格式化字符串说明见~

希望我的回答对你有所帮助!呵呵~

function getAllMondayOf($year_month = ''){

    if(empty($year_month)){

        $year_month = date("Y-m");

    }

    $maxDay  = date('t', strtotime($year_month"-01"));

    $mondays = array();

    for($i=1; $i<=$maxDay; $i++){

        if(date('w', strtotime($year_month"-"$i)) == 1){

            $mondays[] = $year_month"-"($i>9'':'0')$i;

        }

    }

    return $mondays;

}

print_r(getAllMondayOf('2016-06'));

print_r(getAllMondayOf('2016-07'));

print_r(getAllMondayOf()); //默认当月

exit;

^\d{4}(年|\-|\)(0[1-9]|1[0-2])(月|\-|\)(0[1-9]|[1-2]\d|3[0-1])日$

这种是还是有缺陷的你可以看到最后一个,还有就是2月31日这样的也会被匹配的。不过应对一般日期还是可以的。

使用time()函数先返回当前的时间戳秒数,然后+上本月剩余的x天246060

echo date("Y年-m月-d日-N,H点:i分:s秒",time()+(x246060));

以上就是关于php中如何获取最近六个月每个月的起始时间和结束时间全部的内容,包括:php中如何获取最近六个月每个月的起始时间和结束时间、请问在PHP中取当前日期的时间戳(年-月-日)该怎么写、php如何获取到每个月所有周1的日期。求大神给予代码和思路指导等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/9641898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存