自豪地使用 Typecho 建站

用心 记录着 生活点点滴滴

苏ICP备2021014930号

自豪地使用 Typecho 建站搭配使用 🌻Sunny 主题当前在线 1 人
歌曲封面 未知作品
  • 歌曲封面Good TimeCarly Rae Jepsen
  • 歌曲封面I Like Me BetterLauv
  • 歌曲封面Don't Wanna Know/We Don't Talk AnymoreSam Tsui / Alex Blue

自豪地使用 Typecho 建站

用心 记录着 生活点点滴滴

苏ICP备2021014930号

网站已运行 240 天 7 小时 45 分

Powered by Typecho & Sunny

2 online · 23 ms

许大阳的日记本 健全的灵魂,寄宿在健全的肉体和健全的精神之上。《噬魂师》
Title

BUG日记 ● 修改typecho时区

许大阳

·

Article
前言

当我所有东西基本设置完了以后发现了一个问题:后台撰写文章发布后文章显示时间为八小时前

解决方法

▶首先确定服务器时间与北京时间同步(没问题看下面)
▶typecho 默认的时区是 UTC 协调世界时,我们需要将它改为 Asia/Shanghai 具体的操作方法是在网站的根目录下的 var/Widget/Init.php 文件中找到以下字段进行修改

♾️ html 代码:
 @date_default_timezone_set('UTC');    将其中的 UTC 改成 Asia/Shanghai 或你需要的时区

@date_default_timezone_set('UTC');
Asia/Shanghai

现在已有 6 条评论,0 人点赞
Comment
发表
  1. 头像
    @
    这个问题的原因其实并不是 Typecho 默认时区为 UTC(typecho 的默认时区应该是 UTC+8 的),而是 PHP 的默认时区为 UTC。Typecho 后台可以设置时区,但 Typecho 使用的是自己实现的一套时区计算时间的代码 `Typecho\Date`,而没有调用 PHP 的 `date_timezone_set` 去修改 PHP 的时区设置。
    · 中国广东省深圳市电信

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
    1. 头像
      @
      所以:1. Typecho 后台设置的时区只对 Typecho 提供的一些时间打印函数生效(比如 `Widget\Contents->date()`) ,而对 php 内置的日期时间函数(比如 `date`)不生效;
      2. 主题打印的时间不对,很可能是因为没有调用 Typecho 的时间打印函数,而是直接调用了 php 的 date 函数。
      · 中国广东省深圳市电信

      👍

      💖

      💯

      💦

      😄

      🪙

      👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
      1. 头像
        @
        看懂了好像也没看懂?
        · 中国江苏省无锡市宜兴市电信

        👍

        💖

        💯

        💦

        😄

        🪙

        👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
  2. 头像
    @
    ???祝小站越做越好
    · 中国山东省联通

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
    1. 头像
      @
      好 谢谢?
      · 中国江苏省无锡市电信

      👍

      💖

      💯

      💦

      😄

      🪙

      👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
  3. 头像
    @
    按照这个方法真成功了 ,终于解决了我的困扰。感谢打扰???
    · 中国山东省联通

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
搜 索 消 息 足 迹
你还不曾留言过..
你还不曾留下足迹..
博主