草庐IT

php - 在 PHP/MySQL 中将日期时间存储为 UTC

我读到的所有关于将时间转换为用户时区的文章都说,最好的方法是以UTC存储日期和时间,然后将用户的时区偏移量添加到这个时间。如何以UTC时间存储日期?我使用MySQLDATETIME字段。在我的PHP代码中向MySQL添加新记录时,我会使用now()插入MySQLDATETIME。我需要使用不同于now()的东西来存储UTC时间吗? 最佳答案 MySQL:UTC_TIMESTAMP()ReturnsthecurrentUTCdateandtimeasavaluein'YYYY-MM-DDHH:MM:SS'orYYYYMMDDHHMMS

php - 用于计算用户所在时区的 Twitter 时区和 created_at(utc 时间)值

我正在尝试根据给定推文对象中的time_zone或created_at值来估计推特用户的位置。然而,似乎我遇到的所有created_at值都只是毫无意义的本地化时间,而且它们提供的时区并不是最有用的格式示例推文"created_at":"ThuJun0214:41:24+00002011""time_zone":null或"created_at":"SunJan0905:03:52+00002011""time_zone":"MountainTime(US&Canada)"这两个时间都不是UTC时间,time_zone也不是世界其他地方的任何特定标准格式我可能遇到了非常烦人的情况,我又

php - 强制 php strtotime 使用 UTC

我已经看到了一些关于这个的问题,但没有一个明确的答案......strtotime()在将字符串转换为unix时间戳时将使用为PHP设置的默认时区。但是,我想将字符串转换为UTC中的unix时间戳。既然没有这样做的参数,那怎么办呢?我要转换的字符串是:2011-10-27T20:23:39,它已经是UTC格式了。我想将其表示为UTC中的unix时间戳。谢谢 最佳答案 我意识到这个问题很老了,但我找到了另一个可能有用的选项。您可以像这样将时区指定为传递给strtotime的字符串的一部分,而不是设置然后恢复php的时区:echodat

php - 如何通过 PHP 轻松转换 UTC 日期?

我将日期存储在MySQL数据库中的UTC日期时间字段中。我正在使用PHP,并且调用了date_timezone_set('UTC'),以便所有对date()的调用(不带时间戳)都返回UTC日期。然后我有了它,所以给定的网站可以选择它的时区。现在我希望日期显示在网站的时区中。因此,如果我将日期存储为“2009-04-0115:36:13”,它应该为PDT时区(-7小时)的用户显示为“2009-04-0108:36:13”.通过PHP执行此操作的最简单(最少代码)方法是什么?到目前为止我想到的是date('Y-m-dH:i:s',strtotime($Site->getUTCOffset(

MySQL 工作台 : how do I set up "ON UPDATE" and CURRENT_TIMESTAMP?

查看:UpdatetimestampcolumninApplicationorDatabase?我正在尝试在Workbench中建模类似的东西,但我不知道在哪里设置“ONUPDATE”部分。我能得到的最好的结果如下:---------------------------------------------------------Table`foo`.`test`-------------------------------------------------------DROPTABLEIFEXISTS`foo`.`test`;CREATETABLEIFNOTEXISTS`foo`.`

MySQL 工作台 : how do I set up "ON UPDATE" and CURRENT_TIMESTAMP?

查看:UpdatetimestampcolumninApplicationorDatabase?我正在尝试在Workbench中建模类似的东西,但我不知道在哪里设置“ONUPDATE”部分。我能得到的最好的结果如下:---------------------------------------------------------Table`foo`.`test`-------------------------------------------------------DROPTABLEIFEXISTS`foo`.`test`;CREATETABLEIFNOTEXISTS`foo`.`

MYSQL 查询/日期早于 1 周前(UTC 中的所有日期时间)

如何查询mysql数据库以返回日期时间早于1周前的所有记录。请注意,日期时间表以UTC格式存储所有内容,我应该对其进行比较。明确一点-我正在寻找一个纯mysql查询。 最佳答案 SELECT*FROMtblWHEREdatetime如果您的表存储的日期时间与NOW()返回的时区不同,您可以使用UTC_TIMESTAMP()来获取UTC时间戳。 关于MYSQL查询/日期早于1周前(UTC中的所有日期时间),我们在StackOverflow上找到一个类似的问题:

MYSQL 查询/日期早于 1 周前(UTC 中的所有日期时间)

如何查询mysql数据库以返回日期时间早于1周前的所有记录。请注意,日期时间表以UTC格式存储所有内容,我应该对其进行比较。明确一点-我正在寻找一个纯mysql查询。 最佳答案 SELECT*FROMtblWHEREdatetime如果您的表存储的日期时间与NOW()返回的时区不同,您可以使用UTC_TIMESTAMP()来获取UTC时间戳。 关于MYSQL查询/日期早于1周前(UTC中的所有日期时间),我们在StackOverflow上找到一个类似的问题:

java - 使用JodaTime将UTC转换为以毫秒为单位的本地时间

我正在尝试使用Jodatime显示特定时间段内的交易。我们的服务器要求开始日期和结束日期必须采用UTC(这很明显)。因此,围绕它们的任何业务逻辑都使用时区设置为DateTimeZone.UTC的DateTime对象,例如mStartDate=DateTime.now(UTC).withTimeAtStartOfDay();效果很好,除非涉及到显示的时间,我不知道如何在本地(系统默认)时区进行扩展。理想情况下,我想使用传递两个本地时间戳的DateUtilsformatDateRange函数。但是getMillis()函数似乎并未考虑局部偏移量:我也尝试过这个:mTimePeriodTit

java - 使用日历和日期获取 UTC 时间

这个问题在这里已经有了答案:Calendar.getInstance(TimeZone.getTimeZone("UTC"))isnotreturningUTCtime(7个答案)关闭8年前。我正在尝试使用以下代码获取UTC时间的Date实例:Calendarcal=Calendar.getInstance(TimeZone.getTimeZone("GMT"));Datenow=cal.getTime();这看起来很简单,但是如果我检查IntelliJ调试器的值,我会得到不同的cal和now日期:cal:java.util.GregorianCalendar[time=1405690