функция time ago и склонение

m1ko

Создатель
Регистрация
15 Авг 2010
Сообщения
42
Реакции
3
Рябзи помогите пожалуйста, я гуглил но все для меня размыто как-то.
Мне нужна такая функция
Идет запись в базу там в ячейке передается значение из 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;  
    }
 
Уже сделал решение, если можно удалите тему или закройте, кому пригодится пишите личку кину код
 
Назад
Сверху