GMT (Greenwich Mean Time) : 그리니치 평균시(또는 그리니치 표준시)

런던을 기점으로 하고, 웰링턴에 종점으로 설정되는 협정 세계시의 기준시간대이다.

1972년 1월 1일부터 1970년 1월 1일을 기점으로 하는 협정 세계시(協定世界時, UTC)를 공식 표현으로 쓰지만 아직도 영국 BBC 방송을 중심으로 GMT란 표현은 널리 쓰이고 있다.

 

출처: https://ko.wikipedia.org/wiki/%EA%B7%B8%EB%A6%AC%EB%8B%88%EC%B9%98_%ED%8F%89%EA%B7%A0%EC%8B%9C

UTC (Coordinated Universal Time/Universal Time Coordinated) : 협정 세계시

1972년 1월 1일부터 시행된 국제 표준시이다. UTC는 국제원자시 윤초 보정을 기반으로 표준화되었다.

UTC는 그리니치 평균시(GMT)에 기반하므로 GMT로도 불리기도 하는데, UTC와 GMT는 초의 소숫점 단위에서만 차이가 나기 때문에 일상에서는 혼용된다. 기술적인 표기에서는 UTC가 사용된다.

 

출처 : https://ko.wikipedia.org/wiki/%ED%98%91%EC%A0%95_%EC%84%B8%EA%B3%84%EC%8B%9C

KST (Korea Standard Time) : 한국 표준시

대한민국 조선민주주의인민공화국의 표준시로, 동경 135도를 기준으로 하여 UTC보다 9시간 빠른 표준시(UTC+09:00)이다. 이는 일본 표준시와 같다. 일광 절약 시간제는 사용하지 않고 있다.

예)
UTC가 2021년 12월 25일 오전 9시 라면,
KST는 2021년 12월 25일 오후 6시가 된다.

 

출처 : https://ko.wikipedia.org/wiki/%ED%95%9C%EA%B5%AD_%ED%91%9C%EC%A4%80%EC%8B%9C

PHP에서 KST로 시간 표시하는 방법

PHP에서 별도의 시간대를 설정하지 않으면, "date" 명령을 사용했을 때 UTC 시간대가 출력된다.

이를 KST(한국 표준시)로 표시하기 위한 방법은 3가지가 있다.

1. php.ini에서 디폴트 시간대를 설정

php.ini 에서 아래와 같이 timezone을 설정한 후, 웹 서비스를 재시작하면 "date" 명령 사용 시 한국시간이 표시된다.

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone =Asia/Seoul

2. PHP 코드에서 설정

PHP 코드에서 아래와 같이 디폴트 시간대를 설정할 수 있다.

이렇게 하면 스크립트의 모든 date 함수 호출 시 한국시간이 표시된다.

<?php
date_default_timezone_set('Asia/Seoul');
echo date("Y-m-d H:i:s");
?>

https://www.php.net/manual/en/function.date-default-timezone-set.php

 

3. 디폴트 타임존이 UTC인 상태에서, 일시적으로 한국 시간으로 변경하고 싶은 경우

DateTime 객체에 setTimeZone(new DateTimeZone('Asia/Seoul')을 해주면 한국 시간으로 변경된다.

<?php
$dt = new DateTime('now');
echo 'UTC time : ' . $dt->format('Y-m-d H:i:s');
echo "\n";

$dt->setTimeZone(new DateTimeZone('Asia/Seoul'));
$dtKST = $dt->format('Y-m-d H:i:s');
echo 'KST time : ' . $dtKST;
?>

+ Recent posts