我有ISO格式的持续时间,我需要将其转换为秒数。我使用函数DateInterval
来提取years, mounths, days, hours, minutes and seconds
并将其转换为秒。但是我遇到了一个问题:当ISO格式的持续时间仅包含int
个数字(PT2M2S)时,DateInterval
函数可以正常工作,但当持续时间包含十进制数(PT2M2.6S)时,{{1}功能确实有效。
例如:$ session_time = DataInterval
当我使用"PT2M2S";
时:
DataInterval
在这个cas中它完美无缺。
现在,如果我有例子:$ session_time = `$interval = new DateInterval($session_time);`
$sessionTimeBySeconde = $interval->y*525600*60 + $interval->m*43800*60 + $interval->h*3600 + $interval->i*60 + $interval->s;
如果我像上面那样使用DataInterval:
"PT2M2.6S";
在这个cas中,它确实有效..
对于信息,我不对值`$interval = new DateInterval($session_time);`
$sessionTimeBySeconde = $interval->y*525600*60 + $interval->m*43800*60 + $interval->h*3600 + $interval->i*60 + $interval->s;
负责,我会把它从另一个系统中获取,我希望将其转换为秒。
我能做什么?