PHP로 UTC 시간을 얻으십시오
PHP의 date () 함수를 사용하여 UTC / GMT +/- 타임 스탬프를 어떻게 얻을 수 있습니까? 예를 들어 시도하면
date("Y-m-d H:i:s", time());
유닉스 타임 스탬프를받을 것입니다. 하지만 현지 시간을 기준으로 KMT / UTC +/- 0400 또는 GMT / UTC +/- 1000을 사용하여 UTC / GMT 타임 스탬프를 가져옵니다.
를 사용 하면 항상 GMT 날짜가 반환됩니다. 구문 은와 동일합니다 .gmdate
date
간단한 gmdate () 로 충분합니다
<?php
print gmdate("Y-m-d\TH:i:s\Z");
앞에서 대답 했듯이 PHP 5.2.0부터 DateTime
클래스를 사용하고 인스턴스를 사용하여 UTC를 사용할 수 있습니다 DateTimeZone
.
DateTime __construct () 설명서 에서는 현재 시간을 가져 오기 위해 첫 번째를 할 때 "지금"을 첫 번째 매개 변수로 제안합니다.
$date_utc = new \DateTime("now", new \DateTimeZone("UTC"));
echo $date_utc->format(\DateTime::RFC850); # Saturday, 18-Apr-15 03:23:46 UTC
$time = time();
$check = $time+date("Z",$time);
echo strftime("%B %d, %Y @ %H:%M:%S UTC", $check);
date("Y-m-d H:i:s", time() - date("Z"))
전화하는 것 외에이 gmdate
코드를 나머지 코드 앞에 놓을 수도 있습니다.
<?php
date_default_timezone_set("UTC");
?>
다음 GMT / UTC 행사를 사용하기 위해 나머지 날짜 / 시간 관련 호출이 발생합니다.
UTC 날짜
gmdate("Y-m-d H:i:s");
UTC 타임 스탬프 포함
time();
date_default_timezone_set
코드 에서도 결과가 다르지 않습니다 .
인수없이 gmmktime 함수를 사용하여 현재 UTC 타임 스탬프를 얻을 수 있습니다 .
$time = gmmktime();
echo date("Y-m-d H:i:s", $time);
gmmktime은 서버 시간이 UTC를 사용하는 경우에만 작동합니다. 예를 들어 서버가 미국 / 태평양으로 설정되어 있습니다. 위에 함수는 태평양 시간을 다시 에코합니다.
로컬 타이밍에 따라 따라 GMT / UTC +/- 0400 또는 GMT / UTC +/- 1000
현지 시간에서 성능이 제공하기 위해 사용자 정의 형식 이 없습니다 O
.
그리니치 시간 (GMT)과의 시간 차이 (예 : +0200)
date_default_timezone_set('America/La_Paz');
echo date('Y-m-d H:i:s O');
2018-01-12 12:10:11 -0400
그러나 이식성 / 상호 운용성을 최대화하려면 ISO8601 날짜 형식을 사용하는 것이 좋습니다.c
date_default_timezone_set('America/La_Paz');
echo date('c');
2018-01-12T12 : 10 : 11-04 : 00
date_default_timezone_set('Australia/Brisbane');
echo date('c');
2018-01-13T02 : 10 : 11 + 10:00
사용할 수 있으며 또한 시간대 오프셋 문자열은 항상gmdate
+00:00
date_default_timezone_set('America/La_Paz');
echo gmdate('c');
2018-01-12T16 : 10 : 11 + 00:00
date_default_timezone_set('Australia/Brisbane');
echo gmdate('c');
2018-01-12T16 : 10 : 11 + 00:00
UTC 시간을 원한다면 다음을 사용할 수 있습니다.
date_default_timezone_set('Asia/Calcutta');
$current_date = date("Y/m/d g:i A");
$ist_date = DateTime::createFromFormat(
'"Y/m/d g:i A"',
$current_date,
new DateTimeZone('Asia/Calcutta')
);
$utc_date = clone $ist_date;
$utc_date->setTimeZone(new DateTimeZone('UTC'));
echo 'UTC: ' . $utc_date->format('Y-m-d g:i A');
/**
* Converts a local Unix timestamp to GMT
*
* @param int Unix timestamp
* @return int
*/
function local_to_gmt($time = '')
{
if ($time === '')
{
$time = time();
}
return mktime(
gmdate('G', $time),
gmdate('i', $time),
gmdate('s', $time),
gmdate('n', $time),
gmdate('j', $time),
gmdate('Y', $time)
);
}
참고 URL : https://stackoverflow.com/questions/8655515/get-utc-time-in-php
'IT' 카테고리의 다른 글
CI 플랫폼 (Hudson)을 통해 C # 어셈블리 버전을 어떻게 자동으로 증가시킬 수 있습니까? (0) | 2020.08.02 |
---|---|
Ansible Galaxy 역할을 자동으로 설치하는 방법은 무엇입니까? (0) | 2020.08.02 |
WPF 툴팁을 화면에 유지하도록 강제 (0) | 2020.07.30 |
가짜 외래 키 제약 조건 실패 (0) | 2020.07.30 |
키를 기준으로 사전 정렬 (0) | 2020.07.30 |