Используйте функцию gmdate()
, только если секунды меньше 86400
(1 день) :
$seconds = 8525;
echo gmdate('H:i:s', $seconds);
# 02:22:05
См .: gmdate ()
Запустить демонстрацию
Преобразование секунд для форматирования в футах без ограничений *:
$seconds = 8525;
$H = floor($seconds / 3600);
$i = ($seconds / 60) % 60;
$s = $seconds % 60;
echo sprintf("%02d:%02d:%02d", $H, $i, $s);
# 02:22:05
См .: floor () , sprintf () , арифметические операторы
Запустить демонстрацию
Пример использования расширения DateTime
:
$seconds = 8525;
$zero = new DateTime("@0");
$offset = new DateTime("@$seconds");
$diff = $zero->diff($offset);
echo sprintf("%02d:%02d:%02d", $diff->days * 24 + $diff->h, $diff->i, $diff->s);
# 02:22:05
См .: DateTime :: __ construct () , DateTime :: modify () , клон ,
Sprintf ()
Запустить демонстрацию
Пример MySQL диапазон результата ограничен диапазоном типа данных TIME, который составляет от -838:59:59
до 838:59:59
:
SELECT SEC_TO_TIME(8525);
# 02:22:05
См .: SEC_TO_TIME
Запуск демоверсии
Пример PostgreSQL:
SELECT TO_CHAR('8525 second'::interval, 'HH24:MI:SS');
# 02:22:05
Запустить демонстрацию