添加时间到UTC dateTime [英] Add hours to UTC dateTime

查看:236
本文介绍了添加时间到UTC dateTime的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我确定答案是正确的在我面前,但我有一个UTC dateTime,如下所示:

  2014-01-02 04:02:58 

我想做的只是添加几个小时。



如何在PHP中实现?另外,如果我想要添加几天呢?

解决方案

使用 DateTime() / code>。不同于 date() / strtotime()它是时区和夏令时的友好。

  // PHP 5.2+ 
$ dt = new DateTime('2014-01-02 04:02:58');
$ dt-> modify('+ 2 hours');
echo $ dt-> format('Y-m-d H:i:s');
$ dt-> modify('+ 2 days');
echo $ dt-> format('Y-m-d H:i:s');

看到它在行动



  // PHP 5.3+ 
$ dt = new DateTime('2014-01-02 04:02:58');
$ dt-> add(new DateInterval('PT2H'));
echo $ dt-> format('Y-m-d H:i:s');
$ dt-> add(new DateInterval('P2D'));
echo $ dt-> format('Y-m-d H:i:s');

看到它在行动



  // PHP 5.4+ 
echo(new DateTime('2014-01-02 04:02:58')) - > add(new DateInterval('PT2H')) - >格式('Ymd H:i: s);

参见



参考:




I am sure the answer is right in front of me, but I have a UTC dateTime that looks like this:

2014-01-02 04:02:58

All I want to do is add some hours to that.

How can I achieve this in PHP? Further, how would I add days to it if I wanted to?

解决方案

Use DateTime(). Unlike date()/strtotime() it is timezone and daylight savings time friendly.

// PHP 5.2+
$dt = new DateTime('2014-01-02 04:02:58');
$dt->modify('+2 hours');
echo $dt->format('Y-m-d H:i:s');
$dt->modify('+2 days');
echo $dt->format('Y-m-d H:i:s');

See it in action

Or

// PHP 5.3+
$dt = new DateTime('2014-01-02 04:02:58');
$dt->add(new DateInterval('PT2H'));
echo $dt->format('Y-m-d H:i:s');
$dt->add(new DateInterval('P2D'));
echo $dt->format('Y-m-d H:i:s');

See it in action

Or

// PHP 5.4+
echo (new DateTime('2014-01-02 04:02:58'))->add(new DateInterval('PT2H'))->format('Y-m-d H:i:s');

See it in action

Reference:

这篇关于添加时间到UTC dateTime的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆