在PHP中,當兩個日期具有相似的格式時,匹配兩個日期非常順利,但是當兩個日期具有不相關的格式時,PHP無法分析。在本文中,我們將討論PHP中日期比較的不同情況。我們將找出如何使用DateTime類別和strtotime()函數來比較日期。
如果給定的日期具有相似的格式,我們可以透過簡單的比較運算子來分析這些日期。
<?php $date1 = "2018-11-24"; $date2 = "2019-03-26"; if ($date1 > $date2) echo "$date1 is latest than $date2"; else echo "$date1 is older than $date2"; ?>
2019-03-26 is latest than 2018-11-24
這裡我們以相同的格式宣告了兩個日期$date1和$date2。因此,我們使用比較運算子 (>) 來比較日期。
如果給定的日期此時採用各種格式,我們可以使用strtotime()函數將給定日期轉換為UNIX 時間戳格式並分析這些數字時間戳以獲得預期結果。
<?php $date1 = "18-03-22"; $date2 = "2017-08-24"; $curtimestamp1 = strtotime($date1); $curtimestamp2 = strtotime($date2); if ($curtimestamp1 > $curtimestamp2) echo "$date1 is latest than $date2"; else echo "$date1 is older than $date2"; ?>
18-03-22 is latest than 2017-08-24
在這個範例中,我們有兩個以不同格式表示的日期。因此,我們使用預先定義的函數strtotime()將它們轉換為數值型UNIX時間戳,然後使用不同的比較運算子來比較這些時間戳,以獲得所需的結果。
透過建立DateTime類別的物件來比較兩個日期。
<?php $date1 = new DateTime("18-02-24"); $date2 = new DateTime("2019-03-24"); if ($date1 > $date2) { echo 'datetime1 greater than datetime2'; } if ($date1 < $date2) { echo 'datetime1 lesser than datetime2'; } if ($date1 == $date2) { echo 'datetime2 is equal than datetime1'; } ?>
datetime1 lesser than datetime2
在這個範例中,我們建立了兩個DateTime物件。為了比較這兩個日期,我們使用不同的比較運算子來得到所需的結果。
以上是PHP中日期的比較的詳細內容。更多資訊請關注PHP中文網其他相關文章!