PHP Carbon 切换时区偏移量

PHP Carbon switches timezone offsets

使用 PHP 7.3 和 nesbot/carbon 2.19.0 我 运行 以下代码:

$dt = new Carbon('2019-04-08T04:12:38.000000+00:00', 'UTC');
$local = $dt->copy()->setTimezone('Etc/GMT-9');
$formatted = $local->toISOString(true);

现在我看到 $formatted 现在等于 2019-04-08T13:12:38.000000+09:00。为什么我的时区偏移现在是正的?不应该是负数吗?奇怪的是,如果我 setTimezone('Etc/GMT+9') 那么我的偏移量变为负数。我是否误解了这一点,或者如果没有,关于如何解决它的任何建议?

结果正确。 Etc/GMT-9 的偏移量为 +09:00。 See List of tz database time zones.