我正在尝试转换格式为“HH:MM”的字符串(例如,01:25 - 1 小时 25 分钟),以用作配方页面中的微数据。
DateTime
我可以像这样从字符串创建一个对象:
$time = date_create_from_format("H:i", get_field("tilberedningstid"));
但是如何将此DateTime
对象转换为合法的 ISO8601 持续时间格式?
我觉得我什么都试过了。我玩过这个DateInterval
类,它应该输出(我认为?)正确的格式,这将是PT1H25M
,但我似乎无法将我的DateTime
对象转换为DateInterval
可以解释的格式。我已经尝试过了$interval = DateInterval($time->format(DateTime::ISO8601));
,应该得到DateInterval
班级的支持。
所以问题很简单:如何将字符串“01:25”(HH:MM)转换为 ISO8601 字符串PT1H25M
,以便在 php 中以微格式使用?