1

我正在使用这段代码:

$dtzone = @new DateTimeZone($this->session->userdata('timezone'));
$time =  date('r',$this->session->userdata('old_last_login'));
$dtime = new DateTime($time);
@$dtime->setTimeZone($dtzone);

它在所有浏览器中都可以正常工作,除了在我收到消息的 Firefox 中:

Fatal error: Uncaught exception 'Exception' with message 'DateTimeZone::__construct() 
[<a href='datetimezone.--construct'>datetimezone.--construct</a>]: Unknown or bad timezone ()' 
in /home/example.loc/public_html/application/views/_partials/top.php:7 Stack trace: #0
/home/example.loc/public_html/application/views/_partials/top.php(7): DateTimeZone->__construct('') ...

似乎这是错误消息中最重要的部分:Unknown or bad timezone ()

我不明白为什么它在所有浏览器中都可以,为什么它在 Firefox 中不起作用。

时区已设置。例如:美国/蒙得维的亚

在我看来,firefox 以某种无效格式存储 cookie,因为当我将代码更改为此时:

$dtzone = @new DateTimeZone('America/Montevideo');

有用。

4

0 回答 0