如何在PHP中将ISO 8061转换为Datetime?

如何在PHP中将ISO 8061转换为Datetime?,php,date,youtube-data-api,iso,Php,Date,Youtube Data Api,Iso,我使用的是YouTube API,当我尝试获取视频持续时间时,我收到了PT11M41S,因此是ISO 8061。如何获取PHP日期对象?正如您自己所说,您试图从Youtube API获取持续时间。然后,您收到的格式根本不是datetime,而是持续时间(如预期的那样)基于。您不能简单地将这种持续时间转换为PHP中的Datetime。这将是无用的。但是,您可以通过以下方式将其转换为PHP DateInterval本机对象: $duration = new DateInterval("PT11M41

我使用的是YouTube API,当我尝试获取视频持续时间时,我收到了
PT11M41S
,因此是ISO 8061。如何获取PHP日期对象?

正如您自己所说,您试图从Youtube API获取持续时间。然后,您收到的格式根本不是datetime,而是持续时间(如预期的那样)基于。您不能简单地将这种持续时间转换为PHP中的Datetime。这将是无用的。但是,您可以通过以下方式将其转换为PHP DateInterval本机对象:

$duration = new DateInterval("PT11M41S"); 
从那里,您可以使用
DateInterval::format()函数(以人类可读的设计)对其进行格式化

要了解有关如何构造和使用PHP DateInterval对象的更多信息,您可以查看:

这是一个持续时间,而不是日期/时间
PT11M41S
表示
11分41秒
。您希望得到什么结果?$duration=new DateInterval(“PT11M41S”);