iso 8601 형식의 시간을 표준화 노출로? 바꾸는방법
본문
iso 8601 형식의 시간을
시 분 초 또는 00::00:00 이렇게 변환하는 방법을 참고할만한곳이 있을까요?
현재
PT5M15S
이런식으로 뜨고있는상태인데... 방법이 너무 어려워서요 ㅠㅠ
답변 2
$data = "PT15M51S";
preg_match_all("/\d+/", $data , $matches);
$matches = $matches[0];
$tmp_min = $matches[0];
$data2 = array();
$data2['H'] = sprintf('%02d',floor($tmp_min/60));
$data2['i'] = sprintf('%02d',$tmp_min%60);
$data2['s'] = sprintf('%02d',$matches[1]);
echo $data2['H'].':'.$data2['i'].':'.$data2['s'];
print_r($data2);
참조하세요.
!-->https://en.wikipedia.org/wiki/ISO_8601#Durations
말씀하시는 표시는 날짜 시간이 아니라
기간에 대한 표시입니다.
https://www.php.net/manual/en/dateinterval.construct.php
<?php
$interval = new DateInterval('PT5M15S');
var_dump($interval);
$dateTime = new DateTime;echo $dateTime->format( DateTime::ISO8601 ), PHP_EOL;
$dateTime->add(new DateInterval("PT5M15S"));
echo $dateTime->format( DateTime::ISO8601 ), PHP_EOL;
$date = new DateTime('2000-01-01');
$date->add(new DateInterval('P10D'));
echo $date->format('Y-m-d') . "\n";
?>
답변을 작성하시기 전에 로그인 해주세요.