У меня есть время в формате ISO, которое мне нужно преобразовать в число секунд. Я использую функцию DateInterval
извлекать years, mounths, days, hours, minutes and seconds
и конвертировать его в секунды. Но у меня есть проблема: когда продолжительность в формате ISO содержит только int
номер (PT2M2S), DateInterval
Функция работает отлично, но когда продолжительность содержит десятичное число (PT2M2.6S) DataInterval
функция не работает
Пример: $ session_time = "PT2M2S";
когда я использую DataInterval
:
`$interval = new DateInterval($session_time);`
$sessionTimeBySeconde = $interval->y*525600*60 + $interval->m*43800*60 + $interval->h*3600 + $interval->i*60 + $interval->s;
В этом случае все работает отлично.
Теперь, если у меня есть для примера: $ session_time = "PT2M2.6S";
и если я использую DataInterval, как указано выше:
`$interval = new DateInterval($session_time);`
$sessionTimeBySeconde = $interval->y*525600*60 + $interval->m*43800*60 + $interval->h*3600 + $interval->i*60 + $interval->s;
В этом случае это не работает ..
За информацию я не несу ответственности за ценность $session_time
Я просто получаю его из другой системы и хочу преобразовать его в секунды.
Что я могу сделать ?
Задача ещё не решена.
Других решений пока нет …