2

我想从我在 PHP 脚本中的 GMDATE() 中减去 180 天(出于 UTC 目的)。我刚刚看过 SO,但几乎没有人在使用 gmdate()。

这就是我所拥有的:

$from_date = gmdate("Y-m-d H:i:s");

有没有一种简单的方法可以从中减去 X 天,而无需完全使用不同的函数?还是我应该以另一种方式来做?

4

3 回答 3

4

使用日期时间。处理日期要好得多,尤其是在处理时区时。

$datetime = new DateTime(null, new DateTimeZone('UTC'));
$datetime->modify('-180 days');
echo $datetime->format('Y-m-d H:i:s');

看到它在行动

参考

于 2013-02-19T02:40:52.737 回答
1

UTC格式应该是这样的;

$timezone = new DateTimeZone('UTC');
$datetime = new DateTime('NOW', $timezone);
$datetime->modify('-180 days');
echo $datetime->format('Y-m-d H:i:s');

日期时间:PHP 日期时间类

public __construct ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] )

时区:PHP DateTimeZone 类

public __construct ( string $timezone )

于 2013-02-19T02:46:23.413 回答
0

gmdate('Ymd H:i:s', time() - 15552000)

于 2021-11-21T20:11:05.937 回答