m1ko
Создатель
- Регистрация
- 15 Авг 2010
- Сообщения
- 42
- Реакции
- 3
- Автор темы
- #1
Рябзи помогите пожалуйста, я гуглил но все для меня размыто как-то.
Мне нужна такая функция
Идет запись в базу там в ячейке передается значение из time();
Вот нужна функция которая потом ее читает и сравнивает и пишет в формате только что/минуту назад/ 5 минут и ь.д.
со склонением 2 дня / 7 дней / 1 год / 2 годА назад
Если можно еще с учитываением часового пояса
Кто поможет решить от души вообще респект)
Вот такой пример был, но он не рабит
Мне нужна такая функция
Идет запись в базу там в ячейке передается значение из time();
Вот нужна функция которая потом ее читает и сравнивает и пишет в формате только что/минуту назад/ 5 минут и ь.д.
со склонением 2 дня / 7 дней / 1 год / 2 годА назад
Если можно еще с учитываением часового пояса
Кто поможет решить от души вообще респект)
Вот такой пример был, но он не рабит
Код:
public function Num($number, $titles)
{
$cases = array(2, 0, 1, 1, 1, 2);
return $number.' '.$titles[ ($number%100>4 && $number%100<20) ? 2 : $cases[($number%10<5) ? $number%10:5] ];
}
public function timeAgo($time){
$titles = array("минуту","минуты","минут");
$titles2 = array("час","часа","часов");
$titles3 = array("день","дня","дней");
$titles4 = array("месяц","месяца","месяцев");
$about = " назад";
$now = "Только что";
$new_time = time();
$time = $new_time - $time;
if($time < 60) return $now; else
if($time < 3600) return engine::Num(($time-($time%60))/60, $titles).$about; else
if($time < 86400) return engine::Num(($time-($time%3600))/3600, $titles2).$about; else
if($time < 2073600) return engine::Num(($time - ($time % 86400)) / 86400, $titles3).$about; else
if($time < 62208000) return engine::Num(($time - ($time % 2073600)) / 2073600, $titles4).$about;
}