Привет! Если вы читаете это - вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы получить доступ ко всем разделам нашего форума. Удачи!
Показано с 1 по 6 из 6

Тема: Узнать сколько лет, месяцев, дней прошло от указанной даты.

  1. #1
    ыыыыы Аватар для Mexanizm
    Регистрация
    16.01.2012
    Адрес
    Россия. Воронеж
    Возраст
    31
    Сообщений
    2,450
    Репутация: 287

    Звание: как роза среди колючек

    Вопрос Узнать сколько лет, месяцев, дней прошло от указанной даты.

    Всем привет. Ребят, возникла трудность. Не могу составить функцию разбиение unix времени(секунд) на годы, месяцы, дни.

    Нужно например сколько времени прошло от такой то даты. К примеру от текущей даты.
    Ход мыслей такой: Текущее время - нужное время(при условии, что нужное меньше текущей). Получаем разность между датами. Потом загоняю в такую функцию и получаю чёрти-что.



    Заранее спасибо за подсказку.
    Последний раз редактировалось Mexanizm; 19.01.2019 в 20:17.
    Modern RP





  2. #2
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    30
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек
    Сам разберешься по аналогу?
    PHP код:
    public function GetTimeAgo$date$game false$time_ago false )
        {
            
    $stf      0;
            
    $cur_time time();
            
    $diff     $cur_time $date;
            
            if ( 
    $game )
                
    $seconds = array( 'секунду''секунды''секунд' );
            else
                
    $seconds = array( 'секунда''секунды''секунд' );
                
            
    $minutes = array( 'минута''минуты''минут' );
            
    $hours   = array( 'час''часа''часов' );
            
    $days    = array( 'день''дня''дней' );
            
    $weeks   = array( 'неделя''недели''недель' );
            
    $months  = array( 'месяц''месяца''месяцев' );
            
    $years   = array( 'год''года''лет' );
            
    $decades = array( 'десятилетие''десятилетия''десятилетий' );
        
            
    $phrase = array( $seconds$minutes$hours$days$weeks$months$years$decades );
            
    $length = array( 160360086400604800263088031570560315705600 );
        
            for ( 
    $i sizeof$length ) - 1; ( $i >= ) && ( ( $no $diff $length$i ] ) <= ); $i -- ) {
                ;
            }
            if ( 
    $i ) {
                
    $i 0;
            }
            
    $_time $cur_time - ( $diff $length$i ] );
            
    $no    floor$no );
            
    $value sprintf"%d %s "$no$this->getPhrase$no$phrase$i ] ) );
        
            
    $value '';
        
            for (; 
    $i >= 0$diff %= $length[$i--]) 
            {
                
    $no floor($diff $length[$i]);
                
    $value .= sprintf("%d %s "$no$this->getPhrase$no$phrase[$i]));
            }
        
            if ( 
    $time_ago )
                return 
    $value ' назад';
            else
                return 
    $value;
        } 

  3. 1 пользователь сказал cпасибо Fallen A. за это полезное сообщение:

    Mexanizm (19.01.2019)

  4. #3
    ыыыыы Аватар для Mexanizm
    Регистрация
    16.01.2012
    Адрес
    Россия. Воронеж
    Возраст
    31
    Сообщений
    2,450
    Репутация: 287

    Звание: как роза среди колючек
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Сам разберешься по аналогу?
    PHP код:
    public function GetTimeAgo$date$game false$time_ago false )
        {
            
    $stf      0;
            
    $cur_time time();
            
    $diff     $cur_time $date;
            
            if ( 
    $game )
                
    $seconds = array( 'секунду''секунды''секунд' );
            else
                
    $seconds = array( 'секунда''секунды''секунд' );
                
            
    $minutes = array( 'минута''минуты''минут' );
            
    $hours   = array( 'час''часа''часов' );
            
    $days    = array( 'день''дня''дней' );
            
    $weeks   = array( 'неделя''недели''недель' );
            
    $months  = array( 'месяц''месяца''месяцев' );
            
    $years   = array( 'год''года''лет' );
            
    $decades = array( 'десятилетие''десятилетия''десятилетий' );
        
            
    $phrase = array( $seconds$minutes$hours$days$weeks$months$years$decades );
            
    $length = array( 160360086400604800263088031570560315705600 );
        
            for ( 
    $i sizeof$length ) - 1; ( $i >= ) && ( ( $no $diff $length$i ] ) <= ); $i -- ) {
                ;
            }
            if ( 
    $i ) {
                
    $i 0;
            }
            
    $_time $cur_time - ( $diff $length$i ] );
            
    $no    floor$no );
            
    $value sprintf"%d %s "$no$this->getPhrase$no$phrase$i ] ) );
        
            
    $value '';
        
            for (; 
    $i >= 0$diff %= $length[$i--]) 
            {
                
    $no floor($diff $length[$i]);
                
    $value .= sprintf("%d %s "$no$this->getPhrase$no$phrase[$i]));
            }
        
            if ( 
    $time_ago )
                return 
    $value ' назад';
            else
                return 
    $value;
        } 
    Да. Большое спасибо бро )
    Modern RP





  5. #4
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    30
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек
    Не за что. Ты бы в скуп чаще заходил

  6. #5
    ыыыыы Аватар для Mexanizm
    Регистрация
    16.01.2012
    Адрес
    Россия. Воронеж
    Возраст
    31
    Сообщений
    2,450
    Репутация: 287

    Звание: как роза среди колючек
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Не за что. Ты бы в скуп чаще заходил
    Я там вообще не бываю . Туда если зайдёшь, то разговоров на долгую пару тройку часов
    Modern RP





  7. #6
    Джентльмен лжец Аватар для Fallen A.
    Регистрация
    03.09.2011
    Адрес
    Минск, БССР
    Возраст
    30
    Сообщений
    2,409
    Репутация: 337

    Звание: как роза среди колючек
    Цитата Сообщение от Mexanizm Посмотреть сообщение
    Я там вообще не бываю . Туда если зайдёшь, то разговоров на долгую пару тройку часов
    Ну так ты в лс скинь, где бываешь. Авось и темы не нужно будет создавать. Помогу, чем смогу

  8. 1 пользователь сказал cпасибо Fallen A. за это полезное сообщение:

    Mexanizm (21.01.2019)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •