За последние 24 часа нас посетил 17571 программист и 1713 роботов. Сейчас ищут 1612 программистов ...

Помогите вывести время php

Тема в разделе "PHP для новичков", создана пользователем Zheka007, 14 фев 2017.

  1. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    Есть функция
    Код (Text):
    1. private function Time($val)
    2.     {
    3.         $time = (int)$val;
    4.         $m = floor($time / 60);
    5.         $h = floor($m / 60);
    6.         $m = $m - $h*60;
    7.         $s = $time - $m*60 - $h*60*60;
    8.        if($h != 0) return "$h ч $m мин $s сек";
    9.        if($m != 0) return "$m мин $s сек";
    10.        if($s != 0) return "$s сек";
    11.     }
    Помогите сделать,что бы она выводила ещё и дни,а не только часы.

    Никак не могу допетрить:(
     
  2. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Zheka007, а как ты делаешь?
    Что у тебя в $val?
     
  3. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    Это идёт конвертация,а дальше вот
    Код (Text):
    1. $tim = (int)$row['date_del']-time();
    2. $tim = $this->Time($tim);
     
  4. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  5. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    и где его взять?
     
  6. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  7. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
  8. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Zheka007, покажи, как ты выводишь, куда вставил?
    --- Добавлено ---
    Было бы null у тебя время не отображалось бы.
     
  9. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    echo $this->GetNameItem($row['name'])." - осталось : ".$tim;
    echo var_dump($val);
     
  10. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Zheka007, понятно. Ты сам не программист?
     
  11. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Никого не смутило $this?
     
  12. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    Нет,учусь
     
  13. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Time это метод какого то класса.
     
  14. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    PHP:
    1. <?php
    2. public function time($seconds = 0) {
    3.       $dtFrom = new \DateTime('@0');
    4.       $dtTo = new \DateTime("@$seconds");
    5.       return $dtFrom->diff($dtTo)->format('%y г. %m мес. %d д. %h ч. %i мин. и %s сек.');
    6.   }
     
    #14 Deonis, 14 фев 2017
    Последнее редактирование: 14 фев 2017
    Zheka007 нравится это.
  15. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Я предположил что он внутри класса вызывает Time()
     
  16. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Просто он так скинул ,будто он ее использует вне контекста объекта
     
  17. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Вполне возможно)). Потому что дампит тоже он несуществующую переменную))
     
  18. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    var_dump ТС
    Код (Text):
    1. int(2154403)
     
  19. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    Код (Text):
    1. Вставил dump и получилось число
    2. private function Time($val)
    3.     {
    4.         var_dump($val);
    5.         $time = (int)$val;
    6.         $m = floor($time / 60);
    7.         $h = floor($m / 60);
    8.         $m = $m - $h*60;
    9.         $s = $time - $m*60 - $h*60*60;
    10.        if($h != 0) return "$h ч $m мин $s сек";
    11.        if($m != 0) return "$m мин $s сек";
    12.        if($s != 0) return "$s сек";
    13.     }
    Код (Text):
    1. int(2591907)
    Это время
     
  20. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Zheka007, чтобы что-то вывести, ее надо сначала передать туда.
    --- Добавлено ---
    @Zheka007, присмотрись к примеру
    Deonis
     
    alexblack нравится это.
  21. Zheka007

    Zheka007 Активный пользователь

    С нами с:
    26 янв 2014
    Сообщения:
    25
    Симпатии:
    0
    Спасибо,твой код помог!