草庐IT

Timezone

全部标签

php - 以本地时间显示 MySQL 时间戳

我有一个MySQL数据库,其中存储了大量带有UTC时间戳的数据。当用户查询该数据库时,我希望他们能够在本地时区查看数据。我不想每次都计算偏移量并使用PHP代码更改时间戳。还有其他办法吗? 最佳答案 您可以使用localtime()获取本地时间并从数据库中查找匹配记录的函数。 关于php-以本地时间显示MySQL时间戳,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8029766/

php - 如何更改 NOW() 时区

我在sql查询中使用NOW()。我想将其更改为另一个时区。这可能吗?试过这个功能classcommon{publicfunctiongetTime(){$date=newDateTime();$date->setTimezone(newDateTimeZone('Europe/Paris'));return$date->format('Y-m-dH:i:s');}}出现以下错误Catchablefatalerror:Objectofclasscommoncouldnotbeconvertedtostringinlinebelow$stmt=$this->db->prepare("INS

mysql - 在mysql中将日期转换为UTC时间戳

我有一个包含以下列的表格:|start_date|TZ||Dec2,2012|Eastern||Dec2,2012|GMT|注1:我们的服务器是UTC时间。注2:start_date列是日期字段,不是时间戳字段。2012年12月2日隐式表示“2012-12-0200:00:00”注3:上表其实是多个归一化的表,为了简单起见,我反归一化了注意4:我可以将任何内容放入TZ表中以简化此操作。我想selectfrommy_tablewherestart_date但是,由于时区的原因,这不起作用。如果当前日期/时间是12月1日东部时间晚上9点(UTC时间12月2日凌晨1点),以上查询将返回两个结

php - 同步 MySQL 和 PHP 时间

我正在尝试同步我的PHP和MySQL时间。目前时间不同(输出如下):'SELECTCURRENT_TIMESTAMP'returns'2013-03-1613:14:28''date('Y-m-dg:i:s')'returns'2013-03-1610:14:28'我从其他用户那里了解到,使用SETtime_zone='-7:00';更改MySQL时间取得了成功。问题是时间会根据用户的位置为不同的查询而改变,我不想为每个查询更改time_zone。我是否应该只设置一次time_zone,使其与服务器时间相同,然后在PHP中根据用户的时区更改时间?还是有更好的方法来解决这个问题?提前致谢

php - MySQL TIMESTAMP 列在更新时使用什么时区?

它使用服务器时区还是UNIX_TIMESTAMP(UTC)?我如何在PHP中获取与MySQL的TIMESTAMP列相同时区的当前时间? 最佳答案 取决于您的MySQL配置变量,请参阅MySQLServerTimeZoneSupport. 关于php-MySQLTIMESTAMP列在更新时使用什么时区?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2168478/

php - 将时区转换为另一个时区

我想将从数据库中获取的日期(通过CURRENT_TIMESTAMP生成并存储在timestamp列类型中)从GMT+8转换为GMT+1.$time="2012-11-0715:05:26";//fetchfromdatabase$date=newDateTime($time,newDateTimeZone('Europe/Berlin'));echo$date->format('Y-m-dH:i:s');然而,这将产生"2012-11-0715:05:26"的输出,我很确定这是错误的。我可能在这里遗漏了什么? 最佳答案 首先,您需要

php - 获取具有给定时区偏移量的当前时间

我的数据库字段中有时区偏移。我需要比较(created_date+timezoneoffset)和(currentdate+timezoneoffset)。DATE(created_date+INTERVALtimezone_offsetSECOND)我知道如何在创建日期字段中添加时区。但我必须使用date("Y-m-dH:i:s)添加时区。我在mysql查询中需要以下内容,DATE("usephpdatefunctiontogetcurrentdateandtime"+INTERVALtimezone_offsetSECOND)SQL查询示例:SELECT*FROM`admin`AS

mysql - MySQL 中的 '2018-03-22 00:00:00"有什么问题?

我想更新日期字段并将其设置为2018-03-2200:00:00但出现以下愚蠢错误:ErrorCode:1292.Incorrectdatetimevalue:'2018-03-2200:00:00'forcolumn'Date'atrow158917这是我用于更新的查询:updateassets.transactionssetdate=date_add(date,interval1hour)wheredatebetween'2018-03-2123:00:00'and'2018-06-2923:59:59';怎么了?我搜索了很多,发现MySQL不支持1970-01-0100:00:0

mysql - 在 mysql 中用于时区的数据类型

我在我的数据库中存储了一个UTC日期/时间。我正在努力在用户选择时区后添加此转换,以便为他们显示本地时间。基本上用户从一个表单中选择:(GMT-12:00)Eniwetok,Kwajalein(GMT-11:00)MidwayIsland,Samoa(GMT-10:00)Hawaii...我可以为选项设置任何我想要的值,但一个容易记住的值如上所述。我会为mysql使用什么数据类型?在这种情况下真的重要吗?TINYINT会做吗?也许使用ENUM是个好主意?如有任何建议,我们将不胜感激。 最佳答案 您提议的方案(将时区存储为与GMT的整

php - 为 session 设置 MySQL 时区

我知道使用这个查询我可以在mysql服务器中设置每个session的时间SETSESSIONtime_zone='+04:00'问题是如何检测我所在国家/地区的PHP中的这个+04:00(由于夏令时,它可能在一年中有所不同)部分? 最佳答案 尝试使用时区名称(如America/Chicago)而不是+/-一组小时。这应该考虑到夏令时。如果您还没有将zoneinfo加载到您的mysql数据库中,则需要将它加载到您的mysql数据库中。 关于php-为session设置MySQL时区,我们在