热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql时区时间戳_PHP/MySQL时间戳和时区

如果我使用MySQL中的NOW()函数获取当前时间戳,我可以通过php获取该字段并在不同时区提供该时间吗?基本上将当前时区的当前时间转换为另一个时区&#

如果我使用MySQL中的NOW()函数获取当前时间戳,我可以通过php获取该字段并在不同时区提供该时间吗? 基本上将当前时区的当前时间转换为另一个时区?

您可以使用DateTimeZone类:

$gmt = new DateTimeZone("GMT");

$datetimeInGMT = new DateTime($now, $gmt);

它还采用continent/city形式的位置,例如Europe/London。

如果您的日期时间是非UTC,则可以使用setTimezone:

$datetimeInGMT = new DateTime($now, new DateTimeZone("America/New_York"));

$datetimeInGMT->setTimezone(new DateTimeZone("GMT"));

是的,但如果我已经在不同的时区有时间戳怎么办?我可以将其转换为不同的时区吗?

@John尝试我添加的新代码。

+1(如果可以的话,DateTime的另一个+1)但不要忘记为了使其工作,您需要知道mySQL服务器的当前时区以获得正确的开始日期! MySQL的时区设置可能与系统的区域不同。

@Pekka,你可以用SELECT @@session.time_zone;得到它

此外,如果您不想使用DateTime类(没有理由,只是说)并且您有一个有效的时间戳或日期(如2011年1月1日下午5:00或2011-01-01 20: 00:00),您可以执行类似date("whatever format",strtotime($timestamp) + $theoffset * 3600)的操作,其中$ timestamp是日期,$ theoffset是$ timestamp的时区与您希望将其更改为小时的时区之间的差异。

MySQL的时区处理比PHP更复杂。 它处理简单的时区(EST,PST等)和我称之为"区域时区"(美国/东部)。 使用区域区域使用正确的转换,包括夏令时,即使DST规则多年来发生了变化。

我所做的是使用MySQL函数UTC_TIMESTAMP()将我的所有日期时间存储为UTC。 然后,在查询中,我使用MySQL函数CONVERT_TZ()到我的目标时区。

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html

注意:您可能需要更新时区表。

http://dev.mysql.com/downloads/timezones.html

从PHP 5开始,PHP就是两者中比较复杂的:DateTime类完全支持时区。可以设置DateTime时间戳并交叉转换为任何区域。 MySQL根本无法在DateTime字段中存储时区信息。不过,CONVERT_TZ当然是一种有效的方法

不一定有效。阅读Aarons对此问题的回复stackoverflow.com/questions/1646171/…



推荐阅读
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 获取时间的函数js代码,js获取时区代码
    本文目录一览:1、js获取服务器时间(动态)2 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文介绍了如何使用PHP代码将表格导出为UTF8格式的Excel文件。首先,需要连接到数据库并获取表格的列名。然后,设置文件名和文件指针,并将内容写入文件。最后,设置响应头部,将文件作为附件下载。 ... [详细]
  • Summarize function is doing alignment without timezone ?
    Hi.Imtryingtogetsummarizefrom00:00otfirstdayofthismonthametric, ... [详细]
  • 生产环境下JVM调优参数的设置实例
     正文前先来一波福利推荐: 福利一:百万年薪架构师视频,该视频可以学到很多东西,是本人花钱买的VIP课程,学习消化了一年,为了支持一下女朋友公众号也方便大家学习,共享给大家。福利二 ... [详细]
  • Abp+MongoDb改造默认的审计日志存储位置
    一、背景在实际项目的开发当中,使用AbpZero自带的审计日志功能写入效率比较低。其次审计日志数据量中后期十分庞大,不适合与业务数据存放在一起。所以我们可以重新实现A ... [详细]
  •   《WindowsAzurePlatform系列文章目录》  本文将介绍如何在AzureSQLDatabase创建只读用户。  请先按照笔者之前的文章:AzureSQLDatabas ... [详细]
author-avatar
小旋律丶_409
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有