减少时间

时间:2018-09-10 16:03:31

标签: php mysqli

我的目标:从数据库中删除4小时,然后运行代码以发送文本。在此过程中,请删除秒,仅以小时和分钟为单位。秒部分已在PHP部分中删除并显示,但未在数据库中删除(如果有人可以教我这部分内容,也将非常方便)仅显示小时和分钟,并从数据库中删除秒)

我目前有:

#Variables
$Time = Time in the DB


$TimeMinus = strtotime('- 4 hours');

$TimeNow = date("h:i:sa");

$cleantime = substr($Time,0,5);

然后我尝试运行以下命令:

$TimeRemoved = substr($TimeNow,0,5) - $TimeMinus;

并通过

进行调试
echo "Current time: $TimeNow<br>Time in DB: $cleantime<br/>Time with four hours removed: $TimeRemoved.";

但是我得到这个回应:

Current time: 05:55:09pm
Time in DB: 17:40
Time with four hours removed: -1536580504. 

去掉四个小时的时间显示得很奇怪。我不是mysqli或php最好的,所以请原谅。

3 个答案:

答案 0 :(得分:0)

对于基于MySQL的解决方案,可以使用TIME_FORMAT函数,其格式掩码仅包含小时和分钟。例如:

SELECT TIME_FORMAT('15:02:28', '%H:%i')
FROM dual;

15:02

答案 1 :(得分:0)

final Image img = pic.get(0); pic.get(0).addListener(new ClickListener(){ @Override public void clicked(InputEvent event, float x, float y) { System.out.println("CLICKED!!!"); img.addAction(Actions.moveTo(300,700)); } }); }

其中sqltime是您从数据库获得的日期时间。

答案 2 :(得分:0)

您要先将其转换为时间戳,然后再进行更改。

我不确定您到底需要什么,然后我将向您展示一系列结果:

$times = [];

$times["db"] = strtotime($Time);
$times["now"] = time();
$times["removed"] = strtotime('- 4 hours');
$times["removedFromDB"] = $times["db"] - 60 * 4;

foreach ($times as $key => $time) {
    echo $key . " - " . date("H:i", $time) . " | ";
}

https://3v4l.org/lEGF7