首页 > 后端开发 > php教程 > 如何将 HH:MM:SS(或 MM:SS)时间字符串转换为总秒数?

如何将 HH:MM:SS(或 MM:SS)时间字符串转换为总秒数?

Barbara Streisand
发布: 2024-12-08 08:25:12
原创
420 人浏览过

How to Convert HH:MM:SS (or MM:SS) Time Strings to Total Seconds?

将 HH:MM:SS 格式的时间字符串转换为秒

问题:
你怎么能将 HH:MM:SS 格式的时间字符串转换为平面秒数?时间字符串有时只能采用 MM:SS 格式。

解决方案:

方法 1:使用正则表达式

要转换时间字符串而不拆分它,请使用以下命令代码:

$str_time = "23:12:95";

$str_time = preg_replace("/^([\d]{1,2})\:([\d]{2})$/", "00::", $str_time);

sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);

$time_seconds = $hours * 3600 + $minutes * 60 + $seconds;
登录后复制

方法 2:使用 sscanf()

如果不喜欢正则表达式,请使用以下代码:

$str_time = "2:50";

sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);

$time_seconds = isset($seconds) ? $hours * 3600 + $minutes * 60 + $seconds : $hours * 60 + $minutes;
登录后复制

在第二种方法中,检查秒变量是否设置为正确处理 MM:SS 格式的时间字符串。

以上是如何将 HH:MM:SS(或 MM:SS)时间字符串转换为总秒数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板