一旦我将它们定义为变量,我怎样才能得到最接近的两个日期?
以下是计算下周一和周五的代码:
//calculates nearest Monday
$nextMonday = strtotime("next Monday");
$mondayParade = date("d/m/Y", $nextMonday);
//calculates nearest Friday
$nextFriday = strtotime("next Friday");
$fridayParade = date("d/m/Y", $nextFriday);
回显$mondayParade
时,会显示26/01/2015
这是正确的。 $fridayParade
也如上所述,但显示星期五的日期。
我希望能够计算出这两个日期中哪一个最接近我当前的日期。
我也读过关于strtotime
的内容,但无法弄清楚如何。
由于
答案 0 :(得分:3)
$now = time();
$nextMondayDiff = abs($now - $nextMonday);
$nextFridayDiff = abs($now - $nextFriday);
if ($nextMondayDiff < $nextFridayDiff) {
echo 'Monday is closer';
} else {
echo 'Friday is closer';
}
或者正如@David在评论中指出的那样,假设两个日期总是保证在将来:
if ($nextMonday < $nextFriday) {
echo 'Monday is closer';
} else {
echo 'Friday is closer';
}
答案 1 :(得分:1)
if($nextMonday < $nextFriday) {
echo "Monday";
} else {
echo "Friday";
}