> 백엔드 개발 > PHP 튜토리얼 > PHP에서 시간대에 따라 시간과 날짜를 변환하는 방법

PHP에서 시간대에 따라 시간과 날짜를 변환하는 방법

Barbara Streisand
풀어 주다: 2024-10-23 08:42:29
원래의
802명이 탐색했습니다.

How to Convert Time and Date across Time Zones in PHP

PHP에서 여러 시간대의 시간과 날짜 변환

서로 다른 시간대의 시간과 날짜로 작업할 때 종종 변환이 필요한 경우가 있습니다. 정확한 표현을 보장합니다. 이 기사에서는 PHP에서 시간과 날짜를 한 시간대로 변환하는 것과 관련된 문제와 해결 방법을 살펴봅니다.

시간대 오프셋 및 일광 절약 시간(DST)

시간 변환의 주요 과제 중 하나는 지정된 시간대에 대해 그리니치 표준시(GMT)로부터 시간 오프셋을 얻는 것입니다. [IANA 시간대 데이터베이스](https://www.iana.org/time-zones)와 같은 사용 가능한 공개 데이터베이스가 있지만 오프셋은 특정 시간대 및 시간에 따라 달라질 수 있다는 점에 유의하는 것이 중요합니다. 올해. 일광 절약 시간(DST)은 연중 특정 기간 동안 시간 오프셋을 일시적으로 조정하므로 문제를 더욱 복잡하게 만듭니다.

PHP DateTime 클래스

PHP는 [DateTime]을 제공합니다. (https://www.php.net/manual/en/class.datetime.php) 클래스를 사용하여 시간대 간 변환을 포함하여 시간 및 날짜 작업을 처리합니다. 이 클래스는 다음 기능을 제공합니다.

  • 특정 시점 표현
  • 시간 및 날짜 값 조작
  • 다른 시간대 간 변환

예제 스크립트

다음 스크립트는 DateTime 클래스를 사용하여 한 시간대로 시간과 날짜를 변환하는 방법을 보여줍니다.

<code class="php"><?php
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo $date->format('Y-m-d H:i:sP') . "\n";

$date->setTimezone(new DateTimeZone('Pacific/Chatham'));
echo $date->format('Y-m-d H:i:sP') . "\n";
?></code>
로그인 후 복사

출력:

2000-01-01 00:00:00+12:00
2000-01-01 01:45:00+13:45
로그인 후 복사

이 스크립트는 시간 오프셋과 시간 오프셋을 모두 고려하여 "Pacific/Nauru" 시간대에서 "Pacific/Chatham" 시간대로 시간과 날짜를 변환하는 방법을 보여줍니다. DST.

참고: DateTime 클래스가 PHP 5.2에 도입되었으므로 올바른 버전의 PHP가 설치되어 있는지 확인하는 것이 중요합니다. 또한 format()과 같은 일부 메소드가 최신 버전의 PHP에서 향상되었습니다.

위 내용은 PHP에서 시간대에 따라 시간과 날짜를 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿