0

我已经阅读了很多关于我在这里发布的问题的帖子,但我遇到了一个奇怪的问题。

我已经将我的 PHP 服务器时区设置为"Asia/Bangkok"(只是一个示例) using 文件中的date.timezone指令,php.ini它工作得很好。

当我简单地将时间打印为时,服务器会根据设置的时区返回正确的时间

<?php echo date("F j, Y, g:i A"); ?> 

但是当我想动态打印一系列时间时,mysql在用户输入期间输入到数据库中,例如,

<?php echo date("F j, Y g:i A", strtotime($row_entries['input_time']));?>

服务器根据主机设置的时区返回system时间Europe/Dublin(仅作为示例)。

我什至尝试打印没有strtotime功能的时间,例如,

 <?php echo date("F j, Y g:i A",($row_entries['post_time']));?>

这将返回异常/无效的日期。

这里出了什么问题,如何根据我设置的服务器时区动态打印时间php.ini

4

3 回答 3

1

看来这一行

$row_entries['post_time']

使用不同的 MYSQL 默认时区

那么请您发布在此列中插入数据的 SQL 吗?

于 2013-07-07T10:10:20.483 回答
0

我正在使用时间戳

1) 使用 int 存储 digit 或 varchar 用于文本或 datetime 存储日期和时间。
2) 阅读此数据类型的默认行为 - 当记录中的任何其他字段将被更新时,值将被更新。此数据类型仅应用于记录目的。

于 2013-07-07T10:39:30.433 回答
0

您的 MySQL 可能未配置为正确的时区。这是一个配置链接: http: //dev.mysql.com/doc/refman/5.5/en/time-zone-support.html

于 2013-07-07T10:10:10.797 回答