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 중국어 웹사이트의 기타 관련 기사를 참조하세요!