在PHP中更改时区不起作用
我的托管公司在php.ini中将默认时区设置为America/Chicago。我通过检查PHP代码中的在PHP中更改时区不起作用,php,timezone,Php,Timezone,我的托管公司在php.ini中将默认时区设置为America/Chicago。我通过检查PHP代码中的phpinfo()并回显date\u default\u timezone\u get()来确认时区 然而,我在PHP代码中测试了更改时区,但没有成功 首先,我测试了: echo(newdatetime())->getTimestamp(); 回声“”; 日期\默认\时区\设置('UTC'); echo(newdatetime())->getTimestamp(); 两个回响的时间戳是一样的
phpinfo()
并回显date\u default\u timezone\u get()
来确认时区
然而,我在PHP代码中测试了更改时区,但没有成功
首先,我测试了:
echo(newdatetime())->getTimestamp();
回声“
”;
日期\默认\时区\设置('UTC');
echo(newdatetime())->getTimestamp();
两个回响的时间戳是一样的
然后,我测试:
echo(newdatetime())->getTimestamp();
回声“
”;
$now=新日期时间();
$now->setTimezone(新日期时区('UTC'));
echo$now->getTimestamp();
两个回显的时间戳仍然相同。如果您能够设置时区,请检查此方法
date_default_timezone_set("UTC");
echo date_default_timezone_get();
echo date(“Y-m-d h:I:s”);
希望这有帮助试试这个
使用date\u default\u timezone\u set(“UTC”)
getTimestamp
返回一个。UNIX时间戳在世界各地都是相同的。时区仅影响人类可读的时间,例如,当您执行$now->format('H:i:s')
时
有关更多解释,请参见 你似乎是对的,但这无助于解决他的问题,是吗?它解决了这个问题,因为它清除了一个错误的期望。代码按原样运行良好,期望值是错误的。注释不用于扩展讨论;这段对话已经结束。
<?php
date_default_timezone_set("UTC");
echo date_default_timezone_get().date('Y-m-d h:I:s');
?>