[英]php check month exist between two dates
我有代码检查给定日期是否在两个日期范围内。
$paymentDate = strtotime("2014-02-10 00:00:00");
$contractDateBegin = strtotime("2014-01-01 00:00:00");
$contractDateEnd = strtotime("2014-02-16 00:00:00");
if (($paymentDate > $contractDateBegin) && ($paymentDate < $contractDateEnd))
{
echo "is between";
}
else
{
echo "NO GO!";
}
但是我需要知道一个月在两个日期之间。 在这里,我们只有月份和年份。 在这里,我将给定的日期转换为unix时间戳,并比较这些值以检查结果。 如果我们没有日期,那么如何检查是我的问题。
我认为这是您要寻找的:
$month = DateTime::createFromFormat('Y-m', '2010-05');
$contractDateBegin = (new DateTime('01/01/2001'))->modify('last day of this month')->setTime(23, 59, 59);
$contractDateEnd = (new DateTime('01/01/2012'))->setTime(0, 0, 0);
if ($month > $contractDateBegin && $month < $contractDateEnd) {
// The whole month is in between
}
尝试这个:
$paymentDate = DateTime::createFromFormat('Ym-d', "2013-05-25 00:00:00");
$contractDateBegin = date_create_from_format('Y-m-d', "2012-01-01 00:00:00");
$contractDateEnd = date_create_from_format('Y-m-d', "2014-01-01 00:00:00");
if (($paymentDate > $contractDateBegin) && ($paymentDate < $contractDateEnd))
{
month is between
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.