标题: php.ini中的时区设置date.timezone = PRC
作者: Demon
链接: https://demon.tw/software/php-date-timezone.html
版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。
无意中发现 lnmp 默认的 php.ini 配置中有一行 date.timezone = PRC。PRC,People’s Republic of China,中华人民共和国,也就是日期使用中国的时区。
date.timezone 是 PHP 5.1 中新增加的配置文件参数,默认 date.timezone 是被注释掉的,也就是默认时区是 utc,lnmp 改为了 date.timezone = PRC,这样可以解决时间相差八小时的问题,看来 lnmp 的本土化工作做得不错。不过貌似这个参数一般都设成 Asia/Shanghai 吧?在 PHP 官方文档上找了半天才找到 PRC 这个参数,它不在 Asia 这个分类中,而在 Others,一般人都会在 Asia 里面找吧。
搜索了一下 PHP 源码,在 ext/date/lib/timezonemap.h 中看到如下代码
{ "cst", 0, 28800, "Asia/Chongqing" }, { "cst", 0, 28800, "Asia/Chungking" }, { "cst", 0, 28800, "Asia/Harbin" }, { "cst", 0, 28800, "Asia/Kashgar" }, { "cst", 0, 28800, "Asia/Macao" }, { "cst", 0, 28800, "Asia/Macau" }, { "cst", 0, 28800, "Asia/Shanghai" }, { "cst", 0, 28800, "Asia/Taipei" }, { "cst", 0, 28800, "Asia/Urumqi" }, { "cst", 0, 28800, "PRC" }, { "cst", 0, 28800, "ROC" },
对 PHP 源码的时间部分没有什么研究,姑且认为这几个参数都表示 UTC+8 的东八区中国的北京时间吧。
当然,可以在 PHP 代码中调用 date_default_timezone_set 函数设置运行时的时区,这是常识,我就不多说了。
赞赏微信赞赏支付宝赞赏
随机文章:
一般人都会在 Google 里面找
你不是正常人
Google 里面找不到
前连天遇到个难题 不小心把UT里面做种的种子和数据删了 然后想用SuperRecovery超级硬盘数据恢复软件恢复一下 但是扫描完点击恢复却要求输注册码 好吧 用了人家的东西给钱很正常 但我盗版用习惯了
所以求破解一下这个软件 我试过其他免费的 比如easyrecovery 但觉得还是这个更好用 好了 就是这些 谢谢 希望能帮这个忙 不管怎样 我会一直关注你的博客的 学到一些小技巧还是不错的 虽然我看不懂你写的那些程序 (貌似病句很多)
因为是我在CHD下的一个39G的演唱会原盘 太大了所以不想重下载
我是说自己写的这些话病句连篇
网上不是一堆破解版的么?
高级!!!PHP深入了解东西还是很多的。