Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP의 날짜 비교

<시간/>

PHP에서 두 날짜를 일치시키는 것은 두 날짜가 유사한 형식일 때 매우 매끄럽지만 두 날짜가 관련 없는 형식일 때 PHP는 분석에 실패했습니다. 이 기사에서는 PHP에서 날짜 비교의 다양한 경우에 대해 설명합니다. 날짜를 비교할 때 DateTime 클래스, strtotime()을 활용하는 방법을 알아보겠습니다.

사례 1:

주어진 날짜가 비슷한 형식이면 간단한 비교 연산자로 날짜를 분석할 수 있습니다.

<?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를 선언했습니다. 그래서 우리는 날짜를 비교하기 위해 비교 연산자(>)를 사용했습니다.

사례 2:

주어진 날짜가 그 시점에서 다양한 형식이면 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 타임스탬프로 변환한 다음 이러한 타임스탬프를 비교하기 위해 다른 비교 연산자를 사용하여 원하는 결과를 얻습니다.

사례 3:

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 개체를 만들었습니다. 이 두 날짜를 비교하기 위해 서로 다른 비교 연산자를 사용하여 원하는 결과를 얻습니다.