Spell 'time passed since' in russian (Сколько прошло времени на русском)
<?php
function pass_time($tdiff, $do_rus = 0) {
static $next = array(60, 60, 24, 7, 4, 12);
static $names = array('second','minute','hour','day','week','month','year');
$i = 0;
while ($tdiff >= $next[$i] && $i < sizeof($next)) {
$tdiff /= $next[$i];
$i++;
}
$tn = $names[$i];
$td = floor($tdiff);
if ($do_rus) {
static $ru_names = array(
array('секунд', 'секунду', 'секунды', 1),
array('минут', 'минуту', 'минуты', 1),
array('часов', 'час', 'часа', 1),
array('дней', 'день', 'дня', 0),
array('недель', 'неделю', 'недели', 0),
array('месяцев', 'месяц', 'месяца', 0),
array('лет', 'год', 'года', 1),
);
$ru_name =& $ru_names[$i];
$ltd = substr($td, -1);
$tn = ($ltd == 1 ? $ru_name[1] : ($ltd == 2 || $ltd == 3 || $ltd == 4 ?
($ru_name[3] && $td >= 11 && $td <= 15 ? $ru_name[0] : $ru_name[2]) :
$ru_name[0]));
$tn .= " назад";
} else {
$tn = $names[$i] . ($td > 1 ? 's' : '');
$tn .= " ago";
}
return $td . ' ' . $tn;
}
$old_date = mktime(0,0,0, 9,11,2001);
$time_out = time() - $old_date;
echo "It happend " . pass_time($time_out) . ".<BR>";
echo "Это произошло " . pass_time($time_out, 1) . ".<BR>";
php?>It happend 11 years ago.
Это произошло 11 год назад.