php - 为什么 php 时区在本地主机上是正确的,但上传到服务器后不正确?

标签 php mysql datetime timezone phpmyadmin

我正在使用 php 和 mysql。当我将时间值插入本地主机上的 mysql 数据库时,应用了正确的时间。我目前正在使用 now() 函数。

当我将时间值插入到我的网络托管帐户的 my_sql 数据库中时,它显示了错误的时区。

如果来自不同时区的用户发布了一些内容,而我正在我的时区查看它,我该如何设置它以便向用户显示的时间与用户查看它的位置相关。

$sql1="INSERT INTO notifications (stamp) 
            VALUES (now());

最佳答案

您的服务器位于不同的时区。

您可以在 PHP 和 MySQL 中设置时区。

date_default_timezone_set('America/Los_Angeles');

在 MySQL 中:

SET time_zone = 'America/Los_Angeles';

或者,您可以将时间存储为 timestamp 列,这些列在基础数据中始终为 UTC。

关于php - 为什么 php 时区在本地主机上是正确的,但上传到服务器后不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10554350/

相关文章:

php - "mysqli::close"是否关闭持久连接?

php - 如何正确绑定(bind) PHP 准备和执行语句?

java - 将两种类型的日期合二为一

vb.net - 解析日期时间

php - 插入期间表中最多允许三行

c# - 在 C# 中没有获得正确的日期时间格式

php - 使用 php-ews 创建定期日历事件

php - 获取/设置 magento 表中的自定义列

php - WHERE 子句不工作 mysql

Mysql按列分组并最好在另一个列值上获取最大ID