登录
首页 >  文章 >  php教程

PHP时区设置方法及常用标识符大全

时间:2026-02-25 10:38:39 274浏览 收藏

PHP时区设置看似简单,实则暗藏诸多陷阱:必须严格使用IANA官方标准标识符(如Asia/Shanghai),禁用缩写(CST)、UTC偏移(+08:00)、自定义名称或错误格式(大小写敏感、仅限正斜杠);错误写法会直接触发“Unknown or bad timezone”致命错误;php.ini中的date.timezone可被代码中date_default_timezone_set()静默覆盖,且CLI与Web环境配置可能不同;最稳妥的做法是通过DateTimeZone::listIdentifiers()动态获取合法时区名,生产环境务必锁定主流无歧义标识符(如Asia/Shanghai),避免依赖已弃用别名(PRC、Asia/Chongqing)或不存在路径(China/Beijing),确保时间处理稳定可靠。

PHP时区设置格式是什么_时区标识符的正确写法汇总【介绍】

PHP 时区设置必须用标准时区标识符(如 Asia/Shanghai),不能用缩写(如 CST)、偏移量(如 +08:00)或自定义字符串。

时区标识符不是任意填的,PHP 只认 IANA 官方数据库里的名字

PHP 的 date_default_timezone_set()DateTimeZone 构造函数只接受 IANA 时区数据库中的有效标识符。填错会直接报 DateTimeZone::__construct(): Unknown or bad timezone 错误。

  • Asia/Shanghai ✅ 正确(中国大陆标准时间)
  • PRC ⚠️ 历史遗留别名,PHP 7.0+ 已弃用,不推荐
  • CST ❌ 错误(CST 有多个含义:美国中部、中国标准、澳大利亚中部)
  • +08:00 ❌ 错误(这是 UTC 偏移,不是时区标识符)
  • China/Beijing ❌ 错误(IANA 中不存在该路径)

如何查到合法且稳定的时区名

别靠记忆或搜索引擎拼凑,用 PHP 自带工具最可靠:

  • 运行 php -r "print_r(DateTimeZone::listIdentifiers());" 查全部(约 400+ 个)
  • 按地区筛选更实用:DateTimeZone::listIdentifiers(DateTimeZone::ASIA)
  • 常见中国大陆相关:Asia/Shanghai(覆盖全境,含港澳台实际也常用)、Asia/Urumqi(新疆等地有时用于本地视图,但非官方时区)
  • 注意:没有 Asia/BeijingAsia/Hong_Kong 是独立条目(Asia/Hong_Kong ✅ 存在;Asia/Macau ✅ 存在)

ini 设置和代码设置混用时的优先级陷阱

date.timezonephp.ini 里设了,不代表代码里调 date_default_timezone_set() 就无效——后者会覆盖前者,且影响所有后续 date()strtotime() 等行为。

  • 如果框架(如 Laravel)或 Composer 包内部调用了 date_default_timezone_set(),你的 php.ini 设置可能被静默覆盖
  • ini_set('date.timezone', '...') 是运行时修改,效果同 date_default_timezone_set(),但不如后者语义清晰
  • CLI 和 Web SAPI 的 php.ini 可能不同,用 phpinfo()ini_get('date.timezone') 实际确认当前生效值

时区名大小写和路径分隔符必须严格匹配

IANA 标识符是大小写敏感的,且必须用正斜杠 / 分隔,不能用反斜杠或下划线。

  • asia/shanghai ❌ 全小写错误
  • Asia\Shanghai ❌ Windows 风格反斜杠
  • Asia_Shanghai ❌ 下划线非法
  • Asia/Shanghai ✅ 唯一正确写法
  • 注意:有些旧文档写成 Asia/Chongqing,它在 PHP 中存在但已软废弃,建议统一用 Asia/Shanghai

真正容易被忽略的是:同一个地理区域可能有多个时区名(比如 Asia/ShanghaiAsia/Chongqing 指向同一历史规则),但 PHP 不保证它们长期等价;生产环境务必锁定一个明确、主流、无歧义的标识符,而不是依赖别名或模糊匹配。

本篇关于《PHP时区设置方法及常用标识符大全》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>