zoukankan      html  css  js  c++  java
  • 编程中关于对时区的理解(语言PHP)

    时间戳

            首先来说说time()返回的时间戳,时间戳则是自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。

    格林威治

      由于地球圆的,因此每个时区的时间都有差异,而格林威治时间和北京相差8小时,则应当加8小时(PHP时区中没有北京时区,一般使用上海时区)。

       

        我们可以使用date('Z')函数查看当前系统默认时区与格林威治时间的时差。

     var_dump(date('Z')); //打印输出:string '28800' (length=5)

        28800即60*60*8,也就是8小时。

        比如当前北京时间的时间戳是time()=1300999605

        那么格林威治的时间戳就是:

             1300999605-28800=1300970805

    设置脚本时区

    1、修改php.ini,在php.ini中找到data.timezone =去掉它前面的;号,然后设置data.timezone = “Asia/Shanghai”;即可。 

    2、在程序PHP 5以上版本的程序代码中使用函数ini_set('date.timezone','Asia/Shanghai');或者date_default_timezone_set(‘Asia/Shanghai'); 

    一些常用的时区标识符说明: 

    Asia/Shanghai – 上海 
    Asia/Chongqing – 重庆 
    Asia/Urumqi – 乌鲁木齐 
    Asia/Hong_Kong – 香港 
    Asia/Macao – 澳门 
    Asia/Taipei – 台北 
    Asia/Singapore – 新加坡 

     

  • 相关阅读:
    生成XML文件。
    使用EHCache需要注意的几个问题
    Spring @Value取值为null或@Autowired注入失败
    Windows安装mosquitto
    Linux学习
    hive 日期格式转换
    正则表达式验证字符串是否为IP
    string字符串根据指定字符进行截取转成对应的集合
    CENTOS7自用简单配置
    git的简单使用
  • 原文地址:https://www.cnblogs.com/wwjchina/p/9674502.html
Copyright © 2011-2022 走看看