时区换算

2019-02-16  本文已影响0人  独孤游侠

本初子午线
国际日期变更线 东12和西12的重合线.线两边相差一整天24小时.且是一天时间的起始
东区为正 西区为负

//封装在一个类中
public static $timeZoneMap = [
        'ca' => -5,
        'us' => -5,
//        'us' => -7,
        'mx' => -6,
        'de' => 1,
        'es' => 1,
        'fr' => 1,
        'in' => 5,
        'it' => 1,
        'gb' => 0,
        'cn' => 8,
        'jp' => 9,
        'au' => 11,
        'br' => -2,
    ];

    /**
     * 计算的区时=已知区时-(已知区时的时区-要计算区时的时区),(注:东时区为正,西时区为负)。
     * @param $time 已知区时时间戳
     * @param string $from_area
     * @param string $to_area
     * @return float|int
     */
    public static function timetotime($time, $from_area='cn', $to_area = 'cn'){
        $timeZone_from = self::$timeZoneMap[$from_area];
        $timeZone_to = self::$timeZoneMap[$to_area];
        return ($time - ($timeZone_from-$timeZone_to)*3600);
    }
上一篇下一篇

猜你喜欢

热点阅读