Php date 从数据库信息中添加一天
Php date add one day from database information
我有这行代码:
<?= date('F dS, Y',$user_info['date_of_birth']) ?>
它获取每个用户的 unix 生日日期并将其转换为正常日期。
唯一的问题是它会提前一天显示。
例如,数据库中的 unix 日期是 11th may 1990。
在它将输出的视图中,10th may 1990。
你知道如何解决这个问题吗?
提前致谢
检查同步您的 MySQL 和 PHP 时区。看看这个类似的 question/answer:
要明确回答您的问题,您可以执行以下操作:
<?=date('F dS, Y',($user_info['date_of_birth'] + 86400))?>
其中 86400 是一天中的秒数。
但是,正如其他人所建议的,您可以而且应该将数据库和 Php 同步到 UTC/GMT 时间。
对于 Php 时区,在脚本顶部执行以下操作:
date_default_timezone_set('UTC');
对于 SQL,这取决于您使用的数据库(我不相信您指定了您使用的数据库)。
可能是你服务器上的时间有误。您是否可以访问它 shell 您可以通过 date
命令检查它:
[centos@application ~]$ date
Tue Jul 5 04:17:00 UTC 2016
如果没有,那么您可能不得不这样做:
define('TIMEZONE_OFFSET', 86400);
<?=date('F dS, Y',($user_info['date_of_birth'] + TIMEZONE_OFFSET))?>
如果您有权访问 mysql 控制台,请再次检查其时区设置。
也手动设置php默认时区:
date_default_timezone_set('UTC');
我有这行代码:
<?= date('F dS, Y',$user_info['date_of_birth']) ?>
它获取每个用户的 unix 生日日期并将其转换为正常日期。 唯一的问题是它会提前一天显示。 例如,数据库中的 unix 日期是 11th may 1990。 在它将输出的视图中,10th may 1990。 你知道如何解决这个问题吗?
提前致谢
检查同步您的 MySQL 和 PHP 时区。看看这个类似的 question/answer:
要明确回答您的问题,您可以执行以下操作:
<?=date('F dS, Y',($user_info['date_of_birth'] + 86400))?>
其中 86400 是一天中的秒数。
但是,正如其他人所建议的,您可以而且应该将数据库和 Php 同步到 UTC/GMT 时间。
对于 Php 时区,在脚本顶部执行以下操作:
date_default_timezone_set('UTC');
对于 SQL,这取决于您使用的数据库(我不相信您指定了您使用的数据库)。
可能是你服务器上的时间有误。您是否可以访问它 shell 您可以通过 date
命令检查它:
[centos@application ~]$ date
Tue Jul 5 04:17:00 UTC 2016
如果没有,那么您可能不得不这样做:
define('TIMEZONE_OFFSET', 86400);
<?=date('F dS, Y',($user_info['date_of_birth'] + TIMEZONE_OFFSET))?>
如果您有权访问 mysql 控制台,请再次检查其时区设置。
也手动设置php默认时区:
date_default_timezone_set('UTC');