[code]<?php
/*
Функция взята честно с просторов Интернета;
Спасибо TCP/IP протоколам за это.
*/
function plural($n, $plurals) {
$plural =
($n % 10 == 1 && $n % 100 != 11 ? 0 :
($n % 10 >= 2 && $n % 10 <= 4 &&
($n % 100 < 10 or $n % 100 >= 20) ? 1 : 2));
return $plurals[$plural];
}
function relativeTime($dt, $precision = 2) {
$times = array(
365*24*60*60 => array(\"год\", \"года\", \"лет\"

,
30*24*60*60 => array(\"месяц\", \"месяца\", \"месяцев\"

,
7*24*60*60 => array(\"неделю\", \"недели\", \"недель\"

,
24*60*60 => array(\"день\", \"дня\", \"дней\"

,
60*60 => array(\"час\", \"часа\", \"часов\"

,
60 => array(\"минуту\", \"минуты\", \"минут\"

,
);
$diff = time() - $dt;
if($diff < 60) $output=\'меньше минуты\';
else {
$output = array();
$exit = 0;
foreach($times as $period => $name) {
if($exit >= $precision || ($exit > 0 && $period < 60)) break;
$result = floor($diff / $period);
if ($result > 0) {
if($result == 1) $output[] = plural($result, $name);
else $output[] = $result . \' \' . plural($result, $name);
$diff -= $result * $period;
$exit++;
} else if ($exit > 0) $exit++;
}
if ($precision < 3) $sep = \" и \"; else $sep = \", \";
$output = implode($sep, $output);
}
return $output;
}
?>
[/code]
Добавлено 02.01.14 в 10:43:47:
P.S сам под DCMS перепишешь.