gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 12:57:33 24 4
gpt4 key购买 nike

我读到的所有关于将时间转换为用户时区的文章都说,最好的方法是以 UTC 存储日期和时间,然后将用户的时区偏移量添加到这个时间。

如何以 UTC 时间存储日期?我使用 MySQL DATETIME 字段。

在我的 PHP 代码中向 MySQL 添加新记录时,我会使用 now() 插入 MySQL DATETIME。

我需要使用不同于 now() 的东西来存储 UTC 时间吗?

最佳答案

MySQL:UTC_TIMESTAMP()

Returns the current UTC date and time as a value in 'YYYY-MM-DD HH:MM:SS' or YYYYMMDDHHMMSS.uuuuuu format, depending on whether the function is used in a string or numeric context

PHP:gmdate()

还有 PHP date_default_timezone_set()在 PHP 中用于设置脚本的当前时区。您可以将其设置为客户端时区,以便所有格式化函数返回其本地时间的时间。

事实上,虽然我很难让它发挥作用,而且总是会遇到一些问题。例如。从 MySQL 返回的时间信息没有格式化为 'UTC' 所以 strtotime如果您不小心,会将其转换为本地时间。我很想知道是否有人对这个问题有一个可靠的解决方案,当日期跨越媒体边界时不会中断(HTTP->PHP->MySQL 和 MySQL->PHP->HTTP ),同时考虑 XML 和 RSS/Atom。

关于php - 在 PHP/MySQL 中将日期时间存储为 UTC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1349280/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com