猿问

为什么+3小时又输出+3小时呢?

我正在写一个小的时间计算。给定时间应该总是增加3小时。


但是,如果我在php中执行"+3 h"该方法strtotime(),它将输出另一个值。所以我想知道为什么"+3 hours"会起作用。有人可以解释一下为什么吗?


我的php版本是: 7.0.33-0ubuntu0.16.04.4


$date = "2019-05-04 15:00"; //format is Y-m-d H:i

$out = date("Y-m-d H:i", strtotime("+3 h", strtotime($date)));

echo $out; //out = 2019-05-04 14:00


$date = "2019-05-04 15:00"; //format is Y-m-d H:i

$out = date("Y-m-d H:i", strtotime("+3 hours", strtotime($date)));

echo $out; //out = 2019-05-04 18:00

这是我的测试示例代码。并且$date每15分钟有一个不同的值。


PS:这是我关于stackoverflow的第一个问题-Hello World:D


守候你守候我
浏览 142回答 1
1回答

子衿沉夜

strtotime-将任何英文文本日期时间描述解析为Unix时间戳您需要使用hourOR hours。可以使用day或的日子相似days。$date = "2019-05-04 15:00"; //format is Y-m-d H:i$out = date("Y-m-d H:i", strtotime("+3 h", strtotime($date)));echo $out; //out = 2019-05-04 12:00输出显示为2019-05-04 12:00not 2019-05-04 14:00。似乎您输入了错误的格式;ike +3 h,它只是从原始时间中减去
随时随地看视频慕课网APP
我要回答