本文实例讲述了php实现比较两个字符串日期大小的方法。分享给大家供大家参考。具体如下:
<?php
function dateBDate($date1, $date2) {
// 日期1是否大于日期2
$month1 = date(\"m\", strtotime($date1));
$month2 = date(\"m\", strtotime($date2));
$day1 = date(\"d\", strtotime($date1));
$day2 = date(\"d\", strtotime($date2));
$year1 = date(\"Y\", strtotime($date1));
$year2 = date(\"Y\", strtotime($date2));
$from = mktime(0, 0, 0, $month1, $day1, $year1);
$to = mktime(0, 0, 0, $month2, $day2, $year2);
if ($from > $to) {
return true;
} else {
return false;
}
}
?>
$date1 = \"2009-10-13\";
$date= mktime(0, 0, 0, date(\"m\", strtotime($date1)), date(\"d\", strtotime($date1)), date(\"Y\", strtotime($date1)));
最终取得一个日期的 Unix 时间戳$date=1255392000。
很多时候做搜索的时候,搜索的时间不能大于当前日期,比较函数的写法大致和上面一个函数相同,具体如下:
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;
}
}
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/19728
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我