1

您好我正在尝试以“上次更新:十分钟前”或“上次更新:1 小时前”或“上次更新:昨天”或“上次更新:三天前”等格式获取用户时间戳。

我希望能够呼出时间戳。请在下面找到我已经拥有的:

$currentUserID=Engine_Api::_()->user()->getViewer()->getIdentity();
$sSqlInviter="select creation_date  from engine4_core_status where resource_id=".$currentUserID;
$dbInviterSqli=Zend_Db_Table_Abstract::getDefaultAdapter();
$stmtInviter=$dbInviterSqli->query($sSqlInviter);
$rowInviter=$stmtInviter->fetch();
$post_time_count=$rowInviter['creation_date'];
echo $this->timestamp($post_time_count); 

但它从我刷新页面开始计数。

提前致谢

这个我也解决了。。

$sSqlInviter="select creation_date  from engine4_core_status where resource_id=".$currentUserID." order by creation_date desc limit 1";

谢谢

4

1 回答 1

1

看起来你已经从你的数据库中获得了时间,但问题是如何在考虑时区的情况下正确使用它。您可以尝试使用此代码的一部分:

$oldTz = date_default_timezone_get();               // get old timezone
date_default_timezone_set($viewer->timezone);       // temporarily set user's timezone as default
$start = strtotime($starttime);                     // do something you need
date_default_timezone_set($oldTz);                  // set default timezone back for the rest part of controller
$starttime = date('Y-m-d H:i:s', $start);           // use existing data 

希望这可以帮助。

于 2013-02-28T18:22:51.967 回答