Php 如何将HH:MM:SS:MS转换为几秒钟?
我目前正在从ffmpeg中获取一个mp3文件的长度,这会导致一个时间,比如00:03:50.76,我需要将它转换为不带毫秒的总秒数 所以上面的时间是230秒。regex是否足以满足此要求?使用此选项:Php 如何将HH:MM:SS:MS转换为几秒钟?,php,regex,Php,Regex,我目前正在从ffmpeg中获取一个mp3文件的长度,这会导致一个时间,比如00:03:50.76,我需要将它转换为不带毫秒的总秒数 所以上面的时间是230秒。regex是否足以满足此要求?使用此选项: $res = "00:04:12.44"; $ex = explode(".", $res); $res = $ex[0]; $secs = strtotime("01.01.1970 " . $res); 或-参见Sven的评论: $res = "00:03:50.76"; $ex = ex
$res = "00:04:12.44";
$ex = explode(".", $res);
$res = $ex[0];
$secs = strtotime("01.01.1970 " . $res);
或-参见Sven的评论:
$res = "00:03:50.76";
$ex = explode(".", $res);
$res = $ex[0];
$ex = explode(":", $res);
$secs = $ex[0] * 3600 + $ex[1] * 60 + $ex[2]; // 230 secs
使用以下命令:
$res = "00:04:12.44";
$ex = explode(".", $res);
$res = $ex[0];
$secs = strtotime("01.01.1970 " . $res);
或-参见Sven的评论:
$res = "00:03:50.76";
$ex = explode(".", $res);
$res = $ex[0];
$ex = explode(":", $res);
$secs = $ex[0] * 3600 + $ex[1] * 60 + $ex[2]; // 230 secs
几乎,在毫秒数方面存在问题。然而,这个问题虽然很老,但实际上并不是一个重复的问题——链接的日志和解决方案不包括毫秒数的处理时间。几乎,在毫秒数方面存在问题。然而,这个问题虽然很老,但实际上并不是一个重复的问题——链接的日志和解决方案不包括毫秒数的处理时间。这是可行的,但它似乎将秒舍入到最接近的分钟。这是我得到的结果,秒在左边,我得到的HH:MM:SS:MS在右边,Nevermind,$ex[0]应该是$ex[2]。非常感谢。抱歉:D我更改了它-此解决方案更简单。这是一个危险的解决方案,因为
strotime()
的返回值取决于当前设置的时区。不将此设置为UTC将产生错误的结果。它在25小时或更长的时间内也不会工作。@Sven:谢谢!我将添加另一个解决方案,tooThis有效,但它似乎将秒舍入到最接近的分钟。这是我得到的结果,秒在左边,我得到的HH:MM:SS:MS在右边,Nevermind,$ex[0]应该是$ex[2]。非常感谢。抱歉:D我更改了它-此解决方案更简单。这是一个危险的解决方案,因为strotime()
的返回值取决于当前设置的时区。不将此设置为UTC将产生错误的结果。它在25小时或更长的时间内也不会工作。@Sven:谢谢!我还将添加另一个解决方案