很长一段时间以来,我一直在努力time ago
功能。基本上我将帖子/评论存储在日期为timestamp
的mysql数据库中。稍后,我想显示添加的时间,例如53 minutes ago
。
我将用户时区存储到mysql数据库中,我希望使用用户的时区显示此time ago
函数。
但是,我的函数返回错误的值,例如 - 我住在UTC + 2,我国的时间是11:54。如果我添加新帖子,并检查数据库,帖子添加的时间是11:54,但是当我想要显示时间之前(需要10秒前),它会显示添加的1 hour, 59 minutes, 50 seconds ago
并且像{{ 1}}。
获取时区功能
1 hour, 56 minutes, 26 seconds ago
调用time_elapsed函数
if(isset($userRow['timezone'])) {
date_default_timezone_set($userRow['timezone']);
}elseif(isset($_COOKIE['timeZone'])) {
date_default_timezone_set($_COOKIE['timeZone']);
}
time_elapsed函数
<?php echo $user->time_elapsed($datevariable); ?>
答案 0 :(得分:1)
可能发生的情况是PHP使用的是默认时区,保存在php.ini
文件date.timezone
上。您可以使用phpinfo();
查看并查找date.timezone。您可能需要在那里进行更改。
如果您需要,可用时区:PHP timezones