加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何从时间字符串创建DateInterval

发布时间:2020-12-13 13:50:25 所属栏目:PHP教程 来源:网络整理
导读:如果我有一个时间格式字符串,如“14:30:00”(“小时:分钟:秒”),我如何从字符串中获取DateInterval? 我可以得到一个DateTime: $datetime= DateTime::createFromFormat("H:i:s","14:30:00"); 但是我需要将它添加到另一个DateTime对象,而date_add需要一个D
如果我有一个时间格式字符串,如“14:30:00”(“小时:分钟:秒”),我如何从字符串中获取DateInterval?

我可以得到一个DateTime:

$datetime= DateTime::createFromFormat("H:i:s","14:30:00");

但是我需要将它添加到另一个DateTime对象,而date_add需要一个DateInterval.

如果你想要一个14小时30分钟的间隔,只需使用构造函数……
$interval = new DateInterval('PT14H30M');

打破它…

> P – 所有间隔规格字符串必须以P(对于Period)开头.我们没有使用任何时间间隔,但是……
> T – 这将启动时间规范
> 14H – 14小时
> 30M – 30分钟

如果你必须使用字符串14:30:00,我会用sscanf解析它并使用这些部分……

list($hours,$minutes,$seconds) = sscanf('14:30:00','%d:%d:%d');
$interval = new DateInterval(sprintf('PT%dH%dM%dS',$hours,$seconds));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读