Сбой DateInterval с десятичным числом

У меня есть время в формате 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Я просто получаю его из другой системы и хочу преобразовать его в секунды.

Что я могу сделать ?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]