如何在 php 中转换以毫秒为单位的时间
How to convert time in milliseconds in php
我有一个字幕文件,其中有 start_time 和 end_time,格式如下 00:38:42,689 但我没有想要这个我有字幕的功能,可以在毫秒内工作,所以我想在 php.
中以毫秒为单位转换它
我怎样才能完成它。谢谢
$string = "00:38:42,689";
$time = explode(":", $string);
$hour = $time[0] * 60 * 60 * 1000;
$minute = $time[1] * 60 * 1000;
$second = explode(",", $time[2]);
$sec = $second[0] * 1000;
$milisec= $second[1];
$result = $hour + $minute + $sec + $milisec;
echo $result;
您可以使用 DateTime
class 从那里进行解析和计算:
$timeString = '00:38:42,689';
$dateTime = DateTime::createFromFormat('H:i:s,u', $timeString);
$milliseconds =
$dateTime->format('H') * 60 * 60 * 1000 + // milliseconds in an hour
$dateTime->format('i') * 60 * 1000 + // milliseconds in a minute
$dateTime->format('s') * 1000 + // milliseconds in a second
$dateTime->format('u') / 1000; // microseconds in a millisecond
此代码的示例是 here。
我有一个字幕文件,其中有 start_time 和 end_time,格式如下 00:38:42,689 但我没有想要这个我有字幕的功能,可以在毫秒内工作,所以我想在 php.
中以毫秒为单位转换它我怎样才能完成它。谢谢
$string = "00:38:42,689";
$time = explode(":", $string);
$hour = $time[0] * 60 * 60 * 1000;
$minute = $time[1] * 60 * 1000;
$second = explode(",", $time[2]);
$sec = $second[0] * 1000;
$milisec= $second[1];
$result = $hour + $minute + $sec + $milisec;
echo $result;
您可以使用 DateTime
class 从那里进行解析和计算:
$timeString = '00:38:42,689';
$dateTime = DateTime::createFromFormat('H:i:s,u', $timeString);
$milliseconds =
$dateTime->format('H') * 60 * 60 * 1000 + // milliseconds in an hour
$dateTime->format('i') * 60 * 1000 + // milliseconds in a minute
$dateTime->format('s') * 1000 + // milliseconds in a second
$dateTime->format('u') / 1000; // microseconds in a millisecond
此代码的示例是 here。