在PHP中将String转换为时间

时间:2014-05-27 14:24:25

标签: php time

我从数据库中获取字符串数据 数据格式如:

07:00:00.0000000

这意味着早上7点。 如何将此字符串转换为日期类型进行比较。 因此,我可以得到2个数据。如

Start:
07:00:00.0000000
End:
16:30:00.0000000

经过时间比较,我得到了一个像9.3这样的答案。

1 个答案:

答案 0 :(得分:2)

您可以使用strtotime

$start = strtotime("07:00:00.0000000");
$end   = strtotime("16:30:00.0000000");

$difference = $end - $start;

或使用DataTime对象:

$start = new DateTime("07:00:00.0000000");
$end   = new DateTime("16:30:00.0000000");

$interval   = $start->diff($end);
$difference = $end->getTimestamp() - $start->getTimestamp();

然后echo结果:

echo $difference;            // in seconds
echo $difference / 60;       // in minutes
echo $difference / 3600;     // in hours

echo $interval->format('%s') // in seconds

然后达到您的偏好。我还建议你看看this post关于两种解决方案的表现。