PHP 날짜 비교하기 DateTime 클래스 사용 방법

날짜를 처리할 때 사용하는 클래스로 DateTime이 있습니다.

DateTime 클래스는 PHP5.2.0 이후 버전에서 사용 가능합니다.

DateTime 클래스를 사용하여 날짜를 비교하거나 두개의 날짜를 지정해 일수를 확인하는 방법과 예제를 살펴보겠습니다.

 

날짜 비교하기

DateTime 인스턴스 생성

$date_time = new DateTime('2019-06-21');

 

DateTime 클래스에 날짜를 지정하여 인스턴스를 생성합니다.

날짜를 지정하지 않은 경우에는 현재 날짜로 생성됩니다.

 

날짜 비교 예제

<?php
$date_time1 = new DateTime('2018-06-25');
$date_time2 = new DateTime('2018-06-18');

if ($date_time1 == $date_time2){
	echo "날짜가 같습니다.";
} else if ($date_time1 > $date_time2){
	echo "date_time1 날짜가 큽니다.";
} else {
	echo "date_time2 날짜가 큽니다.";
}
?>

 

결과

date_time1 날짜가 큽니다.

예제에서는 date_time1과 date_time2 라는 변수에 DateTime으로 인스턴스를 생성했습니다.

인스턴스를 생성할때 날짜를 지정하고 if문으로 비교를 했습니다.

 

날짜 차이 구하기

두 개의 날짜를 지정하고 며칠 차이가 나는지 일수를 구하는 방법을 보겠습니다.

일수를 구하는 함수로는 DateTime 클래스에 있는 diff 함수를 사용하겠습니다.

 

일수 구하기 diff 예제

<?php
$datetime1 = new DateTime('2018-06-01');
$datetime2 = new DateTime('2018-06-15');

$interval = $datetime1->diff($datetime2);
echo $interval->d;
?>

 

결과

14

 

DateTime 으로 인스턴스를 생성할때 비교하고 싶은 날짜를 지정합니다.

2개의 변수를 diff 함수를 사용하여 비교합니다.

결과 값은 2개 날짜의 일수를 반환합니다.

댓글