如何在php中获得下个月的同一天

Posted

技术标签:

【中文标题】如何在php中获得下个月的同一天【英文标题】:How to get next month on same day in php 【发布时间】:2014-01-13 06:09:23 【问题描述】:

如何在php中获取下个月的同一天。

通过使用此代码。下个月就可以了

$delidate = '2014-01-13'; // Today is Monday
$monthlyDate = strtotime("+1 month".$delidate);
$monthly = date("Y-m-d", $monthlyDate);
echo $monthly;

这段代码的输出是:-2014-02-13

现在,我只想在星期一得到下个月的日期。

我需要下个月星期一2014-02-10

或者假设如果一天是星期三,那么我需要下个月的星期三日期。

更新:-假设如果下一个日期没有特定日期,那么我需要下个月最近的一天。

更新:-

我试试这个代码

$delidate = '2014-01-29';
$monthlyDate = strtotime( $delidate . " +1 month " );
$monday = strtotime( date("Y-m-d", $monthlyDate) . " Monday this week " );
$monthly = date("Y-m-d", $monday);
echo $monthly;

它给了我输出2014-03-03 而我需要 2014-02-26

【问题讨论】:

获取同一天日期的标准是什么?如果今天是星期一,那么您想要下个月的第一个星期一的日期? 不,我想要同一天的下一个约会。或最近的一天 那么您想要 30 天后最近的星期一吗? right :) 或者假设今天是星期三,那么我需要 30 天后的星期三日期。或 1 个月后最近的星期三 查看***.com/a/21085118/829533 【参考方案1】:

试试这个

$delidate = '2014-01-13';
$monthlyDate = strtotime( $delidate . " +1 month " );
$monday = strtotime( date("Y-m-d", $monthlyDate) . " Monday this week " );
$monthly = date("Y-m-d", $monday);
echo $monthly;

【讨论】:

感谢您的回答,我会调查的。【参考方案2】:

您可以这样做,因为您希望在 1 个月后获得相同的日期

$delidate = '2014-01-13'; // Today is Monday
$monthlyDate = strtotime("+4 week".$delidate);
$monthly = date("Y-m-d", $monthlyDate);
echo $monthly;

【讨论】:

hi Chen 感谢您的回答,假设一个月有 5 周,那么我们下个月是如何得到的。【参考方案3】:

试试这个。这将考虑到当天,而不仅仅是星期一。

$delidate = '2014-01-13';
$monthlyDate = strtotime( $delidate . " +1 month " );
$dayname = strtotime( date("Y-m-d", $monthlyDate) . " " . date('l', strtotime($delidate)) . " this week " );
$monthly = date("Y-m-d", $dayname);
echo $monthly;

【讨论】:

以上是关于如何在php中获得下个月的同一天的主要内容,如果未能解决你的问题,请参考以下文章

如何在n个月内使用sql(无程序)获取每个月的第一天和最后一天

用PHP获取下个月的最后一天?

java如何实现在下个月的某一天自动获取某数据

php+mysql中怎么查询最近12个月每个月的数据

在Python中获取下个月的最后一天[关闭]

如何在SHELL获取当天时间的月份和上个月的月份还有下个月的月份