drupal7中评论显示的发布时间



我需要显示特定文章或节点的评论发布时间。我需要以"时间"为格式的评论的发布时间。

例如:1分钟前

有没有任何方法可以在drupal 7中实现Time ago格式的注释显示。

我想我记得D7中可能有一个本机函数可以做到这一点,但还没有找到。所以与此同时,你可以在模板中拥有这个函数:

function ago($timestamp){
   $difference = time() - $timestamp;
   $periods = array("second", "minute", "hour", "day", "week", "month", "years", "decade");
   $lengths = array("60","60","24","7","4.35","12","10");
   for($j = 0; $difference >= $lengths[$j]; $j++)
   $difference /= $lengths[$j];
   $difference = round($difference);
   if($difference != 1) $periods[$j].= "s";
   $text = "$difference $periods[$j] ago";
   return $text;
  }

然后,当您需要打印"自时间"类型的日期时,例如自用户登录以来的时间:

   global $user;
   echo "Last login: ".ago($user->login);

希望有帮助,祝你好运。

PS-考虑在drupal.stackeexchange.com上发布即将发布的问题,你的帖子将针对那里许多很棒的drupal开发者。祝你好运,编码快乐。

更新-Drupal中有一个本机函数用于格式化日期间隔,它被称为format_interval。

用法示例:

 // Date since forum post was created
 format_interval(REQUEST_TIME - $variables['topic']->created) 

像这样简单多了。

最新更新