gpt4 book ai didi

php - 添加天数不超过一个月的最后一天php

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:37:52 25 4
gpt4 key购买 nike

我在这个表格中有日期 - - 20160428000000(2016 年 4 月 28 日)即 yyyymmdd...

我需要如果某些天(例如 3)被添加到这个日期 - 它应该添加它们但不超过月份(04) - 预期输出 - 20160430000000 - 4 月 30 日

同样,20160226000000 + 5days 应该返回 20160229000000,即闰年 2 月。这意味着,它不应跳到另一个月份。

有什么提示/想法吗?

最佳答案

另一种选择是使用 DateTime 类来检查它:

当然首先要通过输入创建您的对象。然后,设置月份对象的结束日期。

之后进行加法,检查是否超过结束日。如果是,则设置到最后,如果不是,则得到相加的结果:

$day = 5; // days to be added
$date = '20160226000000'; // input date
$dt = DateTime::createFromFormat('YmdHis', $date); // create the input date
$end = clone $dt; // clone / copy the input
$end->modify('last day of this month'); // and set it to last day
$dt->add(DateInterval::createFromDateString("+{$day} days")); // add x days
// make comparision
$final_date = ($dt > $end) ? $end->format('YmdHis') : $dt->format('YmdHis');
echo $final_date;

关于php - 添加天数不超过一个月的最后一天php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36640252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com