如何在php中比较两个没有年份的日期


How to compare two dates without years in php?

我想比较一下这两个日期,一个日期是1921年8月2日,第二个日期是现在的日期。如何比较旧日期和当前日期日期和月份。如果过去的日期9月2日和现在的日期7月2日相等,则应回声。我有一个将过去和现在的日期与年份进行比较的剧本。没有年份如何比较。?

$r1=$row['dateofcon']; 

//会议日期为1921年8月2日。

echo $r1; ?>
$cmg1 = strtotime("$r1");
$day1=date('l',$cmg1);
$now1 = time();
$timeleft1 = $cmg1-$now1;
$daysleft1 = round((($timeleft1/24)/60)/60); //probably...
if($daysleft1 == 0) { 
echo "Happy Conday";}

可能最直接的方法是strtotime和date。

$date1 = '1 Aug 2012';
$date2 = '1 Aug 1912';
if (date('m-d', strtotime($date1)) === date('m-d', strtotime($date2)) {
}

为什么不把日期分为年、月和日?然后:

if (($month1 == $month2) && ($day1 == $day2)) {
  echo 'hi';
}

如果您使用的是PHP 5.3,则可以使用新的DateTime类:

$oDate1 = new DateTime( $datetime1 );
$oDate2 = new DateTime( $datetime2 );
if( $oDate1->format('m-d') == $oDate2->format('m-d')
  echo 'yes';