本文執行個體講述了php實現比較兩個字串日期大小的方法。分享給大家供大家參考。具體如下:
<?phpfunction 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程式設計有所協助。