繁体   English   中英

从PHP日期时间中减去时间

[英]subtract time away from a php date time

我有一份报告生成,但问题是数据库中3个主要事件的日期时间与系统进程相同,所以速度如此之快,因为我将4个服务器中的数据聚合到一个jquery数据表中并没有简便的方法按日期时间递减排序。

所以我的问题是如何在PHP中获取一个变量(mysql格式的日期时间字符串),并将其减少1秒?

狗狗的答案很好。 在下面找到使用DateTime的方法。
对于那些对strtotime不太自信的人:-)

$string = "2013-06-26 18:00:00";

$date = DateTime::createFromFormat('Y-m-d H:i:s', $string);
$date->sub(new DateInterval('PT1S'));//substract 1 sec

echo $date->format('Y-m-d H:i:s'); //print : 2013-06-26 17:59:59

此处有关“ PT1S”的文档(可以读为“周期时间1秒”)

datestrtotime一起使用应该可以解决问题:

http://php.net/manual/de/function.strtotime.php

$string = "2013-06-26 18:00:00"; //can have any (valid) format

$subSeconds = 1;

$date = date("Y-m-d H:i:s", strtotime($string . " - {$subSeconds} second"));
echo $date."<br />"; //2013-06-26 17:59:59

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM