为什么 Asia/Kuala_Lumpur 的时区缩写显示 +8 而不是 MYT?
所以我试图从时区 Asia/Kuala_Lumpur
的日期获取时区缩写,例如我这样做:
$dateTime = new DateTime();
$dateTime->setTimeZone(new DateTimeZone('Asia/Kuala_Lumpur'));
echo $dateTime->format('T');
输出是+08,不应该是MYT
吗?
So i'm trying to get timezone abbreviation from date with timezone Asia/Kuala_Lumpur
, when e.g. I do:
$dateTime = new DateTime();
$dateTime->setTimeZone(new DateTimeZone('Asia/Kuala_Lumpur'));
echo $dateTime->format('T');
is outputs +08, shouldn't it be MYT
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
IANA 时区数据库源代码/数据可以在维护者的 GitHub 存储库中查看。 Asia/Kuala_Lumpur 的数据位于此处并使用“LMT”, “SMT”,然后是缩写的数值。
所以 PHP 在传播时区数据库信息方面做了正确的事情。有时,如果维护者不知道公认的缩写,则使用数字作为缩写。如果您认为 MYT 在这里是正确的,我鼓励您发布到第一个链接上显示的邮件列表,最好附上证据来源。 (我一秒钟都不会怀疑你的知识 - 只是设定对数据库的更改需要证据的期望。)
The IANA time zone database source code/data can be seen in the maintainer's GitHub repository. The data for Asia/Kuala_Lumpur is here and uses "LMT", "SMT" and then numeric values for abbreviations.
So PHP is doing the right thing in terms of propagating the time zone database information. Sometimes numbers are used for abbreviations if the maintainers are unaware of a well-accepted abbreviation. If you feel MYT would be correct here, I'd encourage you to post to the mailing list shown on the first link, ideally with sources of evidence. (I'm not doubting your knowledge for one second - just setting expectations that changes to the database require evidence.)