将第二个持续时间更改为ISO 8601格式

时间:2015-06-05 00:17:03

标签: php time

我该如何转换

  

00:00:46.70

  

T0M46S

我试试

$date = new DateTime($time); echo $date->format('\P\TG\Hi\M');

但它给我这样的东西:

  

PT0H00M

注意我想要持续时间......不是约会!

1 个答案:

答案 0 :(得分:0)

没有本机功能,但您可以使用本机对象DateTime来执行此操作:计算从午夜到您的时间的持续时间。

<?php

    $time     = new DateTime('00:00:46.70');
    $midnight = new DateTime('00:00:00.00');
    $period   = $midnight->diff($time);

    echo $period->format('T%iM%SS'); //output T0M46S

print_r($period);

这是一个php sandbox来测试它