本文實例講述了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程序設計有所幫助。