program tip

PHP에서 날짜 시간을 ISO 8601로 변환하는 방법

radiobox 2020. 9. 13. 10:20
반응형

PHP에서 날짜 시간을 ISO 8601로 변환하는 방법


시간 2010-12-30 23:21:46을 ISO 8601 날짜 형식으로 어떻게 변환 합니까? (-_-;)


객체 지향

이것이 권장되는 방법입니다.

$datetime = new DateTime('2010-12-30 23:21:46');

echo $datetime->format(DateTime::ATOM); // Updated ISO8601

절차 적

이전 버전의 PHP 또는 절차 코드에 더 익숙한 경우.

echo date(DATE_ISO8601, strtotime('2010-12-30 23:21:46'));

PHP 5 이후에는 echo date("c");ISO 8601 형식의 datetime 형식을 사용할 수 있습니다 .

http://ideone.com/nD7piL

주석 참고 :

이와 관련 하여이 두 표현식은 기본 형식 인 시간대에 유효합니다 ±[hh]:[mm], ±[hh][mm], or ±[hh].

그러나 + 0X : 00은 정확하고 + 0X00은 확장 된 사용에 적합하지 않습니다. 따라서 사용하는 것이 좋습니다 date("c"). 여기에 비슷한 논의가 있습니다 .


ISO 8601에서 unixtimestamp로 변환하는 방법 :

strtotime('2012-01-18T11:45:00+01:00');
// Output : 1326883500

unixtimestamp에서 ISO 8601 (시간대 서버)로 변환하는 방법 :

date_format(date_timestamp_set(new DateTime(), 1326883500), 'c');
// Output : 2012-01-18T11:45:00+01:00

unixtimestamp에서 ISO 8601 (GMT)로 변환하는 방법 :

date_format(date_create('@'. 1326883500), 'c') . "\n";
// Output : 2012-01-18T10:45:00+00:00

unixtimestamp에서 ISO 8601 (사용자 지정 시간대)로 변환하는 방법 :

date_format(date_timestamp_set(new DateTime(), 1326883500)->setTimezone(new DateTimeZone('America/New_York')), 'c');
// Output : 2012-01-18T05:45:00-05:00

date("c");

//output : 2018-02-28T13:12:44+01:00

datetime-local에 값을 설정하려고하면

date("Y-m-d\TH:i",strtotime('2010-12-30 23:21:46'));

//output : 2010-12-30T23:21

참고 URL : https://stackoverflow.com/questions/5322285/how-do-i-convert-datetime-to-iso-8601-in-php

반응형