【问题标题】:Change seconds duration to ISO 8601 format将秒持续时间更改为 ISO 8601 格式
【发布时间】:2015-06-05 00:17:03
【问题描述】:

如何转换

00:00:46.70

T0M46S

我试试

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

但它给了我这样的东西:

PT0H00M

注意我想要持续时间...不是日期!

【问题讨论】:

标签: php time


【解决方案1】:

没有原生函数,但您可以使用原生对象 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 来测试它

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-11
    相关资源
    最近更新 更多