时间:2022-06-30 09:27:54 | 栏目:PHP代码 | 点击:次
1、给定的日期格式相同,则使用简单的比较运算符来比较日期。
<?php //声明两个日期、初始化 $date1 = "2021-11-24"; $date2 = "2001-03-26"; // 使用比较运算符比较日期 if ($date1 > $date2) echo "$date1 比 $date2 晚"; else echo "$date1 比 $date2 早";
2、给定的日期格式不同,则使用strtotime() 函数将给定的日期转换成相应的时间戳格式。
最后比较这些数字时间戳以获得所需的结果。
<?php // 声明两个不同的日期格式 $date1 = "12-03-26"; $date2 = "2011-10-24"; // 使用strtotime()函数进行转换 $dateTimestamp1 = strtotime($date1); $dateTimestamp2 = strtotime($date2); // 比较时间戳日期 if ($dateTimestamp1 > $dateTimestamp2) echo "$date1 比 $date2 晚"; else echo "$date1 比 $date2 早"; 3、使用DateTime类比较两个日期。 <?php //声明两个不同的日期 //格式化并使用DateTime()函数 //将日期转换为DateTime $date1 = new DateTime("20-11-24"); $date2 = new DateTime("2021-03-26"); // 比较的日期 if ($date1 > $date2) echo $date1->format("Y-m-d") . " 比 " . $date2->format("Y-m-d")." 晚 "; else echo $date1->format("Y-m-d") . " 比 " . $date2->format("Y-m-d")." 早 ";
知识点扩充:
function dateBCurrent($date){ //日期是否大于当前日期 $currentDate=date("Y-m-d"); //获取当前日期 $cYear=date("Y",strtotime($currentDate)); $cMonth=date("m",strtotime($currentDate)); $cDay=date("d",strtotime($currentDate)); $year=date("Y",strtotime($date)); $month=date("m",strtotime($date)); $day=date("d",strtotime($date)); $currentUnix=mktime(0,0,0,$cMonth,$cDay,$cYear); //当前日期的 Unix 时间戳 $dateUnix=mktime(0,0,0,$month,$day,$year); //待比较日期的 Unix 时间戳 if($dateUnix<=$currentUnix){ return true; }else{ return false; } }