首页 >后端开发 >php教程 >如何在 PHP 中将 HH:MM:SS 时间转换为总秒数?

如何在 PHP 中将 HH:MM:SS 时间转换为总秒数?

Patricia Arquette
Patricia Arquette原创
2024-12-08 07:14:11607浏览

How to Convert HH:MM:SS Time to Total Seconds in PHP?

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

将 HH:MM:SS 格式的时间转换为单位秒数为编程中的常见任务。这可以使用简单的过程来实现。

解决方案:

此转换有两种方法:

方法 1:使用正则表达式

  1. 添加前导零转换为 MM:SS 格式(如果存在)。这可以使用正则表达式来完成:

    $str_time = preg_replace("/^([\d]{1,2})\:([\d]{2})$/", "00::", $str_time);
  2. 使用 sscanf 提取小时、分钟和秒:

    sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
  3. 通过乘以小时来计算秒3600,分钟 60,并添加

方法 2:不使用正则表达式

对于 MM:SS 格式的时间,请使用以下内容:

sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
$time_seconds = isset($seconds) ? $hours * 3600 + $minutes * 60 + $seconds : $hours * 60 + $minutes;

对于 HH:MM:SS 格式的时间,直接使用以下命令提取小时、分钟和秒sscanf:

sscanf($str_time, "%d:%d:%d", $hours, $minutes, $seconds);
$time_seconds = $hours * 3600 + $minutes * 60 + $seconds;

用法示例:

$str_time = "23:12:95";
$time_seconds = $hours * 3600 + $minutes * 60 + $seconds;
echo $time_seconds; // Output: 83575

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

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn