【发布时间】:2011-10-20 00:59:06
【问题描述】:
如何将 6 小时添加到此字符串?
$parent = "2011-08-04 15:00:01";
我认为最好的方法是将其转换为时间戳加上 21600 秒,然后将其转换回日期时间。
如何做到这一点?
提前致谢。
【问题讨论】:
如何将 6 小时添加到此字符串?
$parent = "2011-08-04 15:00:01";
我认为最好的方法是将其转换为时间戳加上 21600 秒,然后将其转换回日期时间。
如何做到这一点?
提前致谢。
【问题讨论】:
$sixhours_from_parent = strtotime($parent) + 21600;
$sixhours_date = date('Y-m-d H:i:s', $sixhours_from_parent);
【讨论】:
似乎来自 SQL 的 timestamp/datetime 值。你可以用它
SELECT datefield + INTERVAL 6 HOUR
【讨论】:
<?php
$parent = "2011-08-04 15:00:01";
$parentTime = strtotime($parent);
$later = strtotime("+6 hours", $parentTime);
echo date('Y-m-d H:i:s', $later);
?>
【讨论】:
您可能正在寻找http://www.php.net/manual/en/function.strtotime.php 函数
$timestamp = strtotime("2011-08-04 15:00:01");
$timestamp += 6 * 3600;
echo date('Y-m-d H:i:s', $timestamp);
【讨论】:
date('Y-m-d H:i:s', strtotime($parent) + 21600);
【讨论】:
对于 PHP > 5.3,您可以在 DateTime 对象上使用 DateInterval 类,我认为这是处理时间计算复杂性的最简单方法。因此,在您的情况下,您可以执行以下操作:
$time = new \DateTime("2011-08-04 15:00:01");
$time->add(new \DateInterval('PT6H')); //add six hours
echo $time->format('Y-m-d H:i:s');
【讨论】: