За последние 24 часа нас посетил 36961 программист и 7905 роботов. Сейчас ищут 1797 программистов ...

Вычислить разницу во времени в цикле

Тема в разделе "PHP для новичков", создана пользователем select, 1 окт 2023.

  1. select

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

    С нами с:
    7 янв 2008
    Сообщения:
    5
    Симпатии:
    0
    Всем привет
    делаю выборку из базы и никак не могу сообразить как вычислить диапазон времени в течении одного дня
    PHP:
    1.           $servername = 'DESKTOP\SQLEXPRESS,50724';
    2.           $options = [
    3.                   'UID' => 'sa', //
    4.                   'PWD' => 'password',
    5.                   'Database' => 'access'
    6.                ];
    7.           $conn = sqlsrv_connect($servername, $options);  
    8.           $sqlstr = "SELECT * FROM dbo.USERINFO WHERE [USERID] = 1";
    9.           $sqlquery = sqlsrv_query($conn, $sqlstr, array(), array( "Scrollable" => 'static' ));  
    10.           $row = sqlsrv_fetch_array($sqlquery, SQLSRV_FETCH_ASSOC);
    11.  
    12.           $sqlstr2 = " SELECT * FROM dbo.acc_monitor_log WHERE [pin] = ".$row['USERID']. "ORDER BY [time] ASC";
    13.                     $sqlquery2 = sqlsrv_query($conn, $sqlstr2);  
    14.                  
    15.                     while ($row2 = sqlsrv_fetch_array($sqlquery2, SQLSRV_FETCH_ASSOC))
    16.                       {                  
    17.  
    18.                                 echo $row2["time"]->format('d:m:Y H.i.s')."<br>";                      
    19.                       }    
    на выходе получаем это
    HTML:
    1. 29:08:2023 14.37.53
    2. 29:08:2023 19.01.31
    3. 29:08:2023 20.30.21
    4. 30:08:2023 09.03.16
    5. 30:08:2023 12.46.38
    6. 30:08:2023 12.49.39
    7. 31:08:2023 09.21.04
    8. 31:08:2023 15.37.03
    9. 31:08:2023 15.37.15
    10. 01:09:2023 09.00.46
    11. 01:09:2023 17.57.25
    не соображу как вычислить время между первым и последним событием в течении дня, за быдлокод не пинайте
     
  2. Slava Rozhnev

    Slava Rozhnev Новичок

    С нами с:
    6 сен 2021
    Сообщения:
    87
    Симпатии:
    26
    Адрес:
    https://phpize.online
    Можно сразу в базе посчитать. Вам в каком виде нужен результат?
     
  3. select

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

    С нами с:
    7 янв 2008
    Сообщения:
    5
    Симпатии:
    0
    Спасибо за быстрый ответ
    результат нужен такой
    29:08:2023 - 5ч 30мин
    30:08:2023 - 7ч 55мин
    и тд
    важно чтоб разница была между первым и последним событием дня

    31:08:2023 09.21.04
    31:08:2023 15.37.03
    31:08:2023 15.37.15

    01:09:2023 09.00.46
    01:09:2023 17.57.25
     
  4. Slava Rozhnev

    Slava Rozhnev Новичок

    С нами с:
    6 сен 2021
    Сообщения:
    87
    Симпатии:
    26
    Адрес:
    https://phpize.online
    Вот пример решения в SQL
    https://sqlize.online/sql/mssql2022/06c1c982418697afc299096e563a4712/
    --- Добавлено ---
    Лучше так
    https://sqlize.online/sql/mssql2022/fb54c0c27505088459bc2f4510c1a4d4/