>  기사  >  백엔드 개발  >  PHP에서 타임스탬프를 다른 시간대의 시간으로 변환하는 방법

PHP에서 타임스탬프를 다른 시간대의 시간으로 변환하는 방법

PHPz
PHPz원래의
2023-03-29 16:25:081181검색

PHP는 널리 사용되는 서버측 프로그래밍 언어이며, 시간에 대한 타임스탬프 기능은 매우 실용적입니다. 그러나 서로 다른 시간대를 고려해야 하는 경우 타임스탬프를 기반으로 하는 시간대 변환을 추가해야 합니다. 이 기사에서는 PHP에서 타임스탬프를 다른 시간대의 시간으로 변환하는 방법에 대해 설명합니다.

  1. 타임존 개념을 이해하세요

시간 변환을 수행하기 전에 타임존 개념을 명확히 해야 합니다. 시간대란 한 지역의 모든 사람이 동일한 표준시를 사용한다는 규칙을 의미합니다. 일반적으로 각 시간대에는 로스앤젤레스 시간대의 UTC-8과 같이 대표적인 도시가 있습니다.

  1. 현재 타임스탬프 가져오기

PHP에서 현재 타임스탬프를 가져오는 함수는 time()입니다. 이 함수는 현재 시스템 시간과 1970년 1월 1일 0:00:00의 UTC 시간 사이의 초를 반환합니다. 숫자 차이입니다.

예:

$timestamp = time();
  1. 지정된 시간대로 변환

타임스탬프를 지정된 시간대로 변환하기 전에 먼저 대상 시간대로 결정한 다음 현재 타임스탬프를 타임스탬프로 변환해야 합니다. 이 시간대를 선택하고 마지막으로 PHP를 사용합니다. date() 함수는 이를 필요한 시간 형식으로 형식화합니다.

예를 들어 현재 타임스탬프를 베이징 시간(CST)으로 변환합니다.

$timestamp = time();
$target_timezone = new DateTimeZone('Asia/Shanghai');
$date_time = new DateTime('@' . $timestamp);
$date_time->setTimeZone($target_timezone);
$beijing_time = $date_time->format('Y-m-d H:i:s');
echo $beijing_time;

이 코드에 대한 설명은 다음과 같습니다.

  • 라인 1은 현재 타임스탬프를 가져옵니다.
  • Line 2는 대상 시간대를 나타내는 DateTimeZone 객체를 생성합니다.
  • 3번째 줄은 현재 타임스탬프를 매개변수로 사용하여 DateTime 객체를 생성합니다.
  • 4번째 줄은 DateTime 객체를 대상 시간대로 설정합니다.
  • 라인 5에서는 DateTime 개체를 "Y-m-d H:i:s" 형식의 문자열로 형식화합니다. 즉, 연-월-일 시:분:초입니다.
  • Line 6은 형식화된 베이징 시간을 출력합니다.
  1. 사용 가능한 시간대 나열

DateTimeZone 개체를 사용할 때 올바른 시간대 식별자를 전달해야 합니다. DateTimeZone 클래스의 정적 메소드 listIdentifiers()를 사용하여 사용 가능한 모든 시간대의 식별자를 나열할 수 있습니다.

예:

$timezones = DateTimeZone::listIdentifiers();
foreach ($timezones as $timezone) {
    echo $timezone . '<br />';
}

이 코드에 대한 설명은 다음과 같습니다.

  • 라인 1은 DateTimeZone 클래스의 listIdentifiers() 메서드를 호출하여 사용 가능한 모든 시간대 식별자가 포함된 배열을 반환합니다.
  • 라인 2-4는 foreach 루프를 사용하여 모든 시간대 식별자를 순회하고 이를 페이지에 출력합니다.

요약

이 문서에서는 PHP에서 타임스탬프를 다른 시간대의 시간으로 변환하는 방법을 설명합니다. 먼저 시간대의 개념을 이해한 다음 DateTime 및 DateTimeZone 클래스를 사용하여 변환해야 합니다. 또한 올바른 시간대를 쉽게 선택할 수 있도록 사용 가능한 모든 시간대 식별자를 나열하는 것이 좋습니다. 이 기사가 PHP 시간 변환을 배우는 모든 사람에게 도움이 되기를 바랍니다.

위 내용은 PHP에서 타임스탬프를 다른 시간대의 시간으로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.