Zarówno funkcje daty/czasu PHP, jak i typy danych daty/czasu MySQL obsługują znaczniki czasu zegara ściennego , a nie czasy trwania; czyli 00:00:55
oznacza pięćdziesiąt pięć sekund po północy . Nie tego chcesz; nie mogłeś wytrzymać czasów dłużej niż 23 godziny, 59 minut, 59 sekund, ponieważ używane typy danych i funkcje obsługują czas zegarowy, który nie może przekroczyć tych wartości.
Twój konkretny problem wynika z ustawień strefy czasowej. Twoim większym problemem jest to, że musisz przechowywać proste wartości całkowite wyrażające upłynięte sekundy lub minuty; nie znaczniki czasu. Aby sformatować to w ciąg czytelny dla człowieka w PHP, możesz użyć DateInterval
klasa
.