время поста для отображения комментария в drupal 7 - PullRequest
1 голос
/ 19 марта 2012

Мне нужно отобразить время публикации комментария для конкретной статьи или узла.Мне нужно время публикации комментария в формате Время назад.

Например: 1 минута назад

Можно ли каким-либо образом добиться отображения формата Время назад для отображения комментариев в drupal 7.

1 Ответ

0 голосов
/ 19 марта 2012

Я думаю, я помню, что может быть встроенная функция, которая делает это в 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.stackexchange.com, и ваша публикация будет предназначена для многих удивительных разработчиков Drupal. Удачи, счастливого кодирования.

Обновление - В Drupal есть встроенная функция для форматирования интервалов дат, она называется format_interval .

Пример использования:

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

Намного проще, как это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...