php mysql 8小时制_Mysql时间戳开始时间1970-01-01 00:00:00和PHP date慢8小时

mysql> select unix_timestamp('1970-01-01 00:00:01');

+---------------------------------------+

| unix_timestamp('1970-01-01 00:00:01') |

+---------------------------------------+

|                                     0 |

+---------------------------------------+

1 row in set (0.00 sec)

mysql> select unix_timestamp('1970-01-01 08:00:00');

+---------------------------------------+

| unix_timestamp('1970-01-01 08:00:00') |

+---------------------------------------+

|                                     0 |

+---------------------------------------+

1 row in set (0.00 sec)

mysql> select unix_timestamp('1970-01-01 08:00:01');

+---------------------------------------+

| unix_timestamp('1970-01-01 08:00:01') |

+---------------------------------------+

|                                     1 |

+---------------------------------------+

1 row in set (0.00 sec)

mysql> select unix_timestamp('1970-01-01 09:00:00');

+---------------------------------------+

| unix_timestamp('1970-01-01 09:00:00') |

+---------------------------------------+

|                                  3600 |

+---------------------------------------+

1 row in set (0.00 sec)

根据这几段代码,情况显而易见。

原因是什么呢?时区设置问题。

中国是在东八区,中国的时区是+8:00:00

所以显示1970/01/01 08:00:00。

一个评论:

你没有理解时间的计算机制。计算机系统里面的时间有两个,

一个叫做系统时间,一个叫做本地时间。

什么是系统时间?就是跟那个什么子午线的地方一致的时间,计算机如果运行正常的话,世界上所有的计算机的系统时间都应该是相同的。但是问题来了,我们有一个时区的概念,虽然所有的计算机的系统时间相同,但是他们的本地时间不一样,比如在那个子午线上的时间是1970-01-01 00:00:00的系统时间的时候,他的本地时间也是1970-01-01 00:00:00。但是在这个时候的中国,处在东八区,它的本地时间比那个时间快八个小时,也就是1970-01-01 08:00:00。注意这只是本地时间不一致,这时候在中国的计算机的系统时间,仍然是1970-01-01 00:00:00。 现在你明白为什么了么?

你就没想一下为什么是八个小时,而不是七个小时或者九个小时么? 好累。。。

mysql时区设置:

有一次,程序的php date在我的电脑和服务器上面运行时间相差8小时。不知道为什么,

时差原因:从php5.1.0开始,php.ini里加了date.timezone这个选项,并且默认情况下是关闭的,也就是显示的时间(无论用什么php命令)都是格林威治标准时间和我们的时间(北京时间)差了正好8个小时。

date_default_timezone_set(PRC);

(我的php.ini 设置为:

date.timezone=Europe/Berlin

)

关于XXX,大陆内地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi ,PRC(依次为重庆,上海,乌鲁木齐,中华人民共和国)港台地区可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次为澳门,香港,台北)还有新加坡:Asia/Singapore其它:Etc/GMT-8 ,Singapore ,Hongkong

mysql 时间戳 按周、日、月 统计方法 附 date格式

create_time时间戳格式 SELECT FROM_UNIXTIME(create_time,'%Y%u') weeks,COUNT(id) COUNT FROM role GROUP BY w ...

Java 获取各时区时间,获取当前时间到格林威治时间1970年01月01日00时00分00秒的秒数

格林威治时间即UTC/GMT时间,1970年01月01日00时00分00秒(即UTC+8的北京时间1970年01月01日08时00分00秒)计算代码如下: /** * 获取指定时间到格林威治时间的秒数 ...

mysql设置timpstamp的默认值为 '0000-00-00 00:00:00' 时报错

问题:mysql设置timpstamp的默认值为 '0000-00-00 00:00:00' 时报错: ERROR 1067 (42000): Invalid default value for 'u ...

关于通过Date.getTime()得到1970年01月1日0点零分问题验证

public static String getTimestamp_1970() throws Exception {   java.text.SimpleDateFormat formater = ...

FROM_UNIXTIME 格式化MYSQL时间戳函数

FROM_UNIXTIME 格式化MYSQL时间戳函数 对MYSQL没有进行过深入的研究,基础知识匮乏,一遇到问题只能手册,看来要把MYSQL的学习安排进时间表了. 函数:FROM_UNIXTIME作 ...

MySQL 时间戳(Timestamp)函数

1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp() mysql> select current_timestamp, curren ...

MySQL 时间戳(Timestamp)函数

1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp() mysql> select current_timestamp, curren ...

MySQL时间戳和时间格式转换函数

MySQL时间戳和时间格式转换函数:unix_timestamp and from_unixtime unix_timestamp将时间转化成时间戳格式.from_unixtime将时间戳转化成时间格 ...

(二)u-boot2013.01.01 for TQ210:《Makefile分析》

当时写的时候看的是2012-10版本的,但是略对比了一遍和2013.01.01没什么改动,所以这不影响对2013.01.01版本的makefile的理解.本文比较侧重于语法句意的分析,框 ...

随机推荐

11条javascript知识

1.局部变量和全局变量 var操作符定义的变量将成为定义该变量作用域中的局部变量.这个局部变量会在函数退出后销毁.不同于其他语言,javaScript不存在块级作用域. 全局变量就是window对象的 ...

终端环境之tmux

今天继续介绍我的终端环境,tmux. why tmux? 用一个工具的第一问自然还是为什么要用.其实当时使用tmux的原因很简单.工作中经常需要长时间的编译.总想要下班后要关机的情况下,(肯定有人问我 ...

SqlServer 临时表、表变量、函数 替代游标

http://www.cnblogs.com/chongzi/archive/2011/01/19/1939106.html 临时表 存放在tempdb中 --存储过程中将多表连接结果写入到临时表中, ...

hdu 4112 Break the Chocolate(ceil floor)

规律题: #include #include #define eps 1e-8 int main() { int _case; int n,m ...

CodeIgniter 3之Session类库(3)(转)

本文主要讲CI2和CI3关于Session类库的区别.我们知道CI2的Session类使用了cookie来传递session数据.使用 cookie保存会话的好处在于可以节省服务器资源,但坏处也是显而 ...

【玩转Ubuntu】04. Ubuntu上配置git环境

1. 使用PPA安装Git PPA,表示 Personal Package Archives,也就是个人软件包集. 有很多软件因为种种原因,不能进入官方的 Ubuntu 软件仓库. 为了方便 Ubun ...

freemarker中值比较的写法

因为freemarker中不能使用<.>的方式进行值的比较,大于使用gt,小于使用lt.所以集合大于0判断,如下:

Dynamics CRM中跨域调用Web API 2

关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复224或者20160611可方便获取本文,同时可以在第一间得到我发布的最新的博文信息,follow me!我的网站是 www.luoyong. ...

angular&period;lowercase&lpar;&rpar;

...

php实现斐波那契数列

斐波那契数列: 1 1 2 3 5 8 13 21 34 55 … 概念: 前两个值都为1,该数列从第三位开始,每一位都是当前位前两位的和 规律公式为: Fn = F(n-1) + F(n+1) F: ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值