Заполнение времени слева с помощью sprintf? - PullRequest
1 голос
/ 24 июля 2009

Я пытаюсь заполнить время (время воспроизведения MP3), используя sprintf () в PHP.

sprintf("%02d:2d:2d", $time);

Функция, которая возвращает время, получает, например, «1:56», еслиMP3 длится 1 минуту 56 секунд, и этот вызов возвращает «01:56:00» (тогда как он должен быть 00:01:56). Как я могу сделать эту работу? Как я могу сказать sprintf набивке слева?

Или есть лучший способ сделать это? Может быть, более подходящая функция?

Спасибо

Ответы [ 3 ]

4 голосов
/ 24 июля 2009

Я думаю, вам нужно рассчитать каждый элемент отдельно, так как насчет:

sprintf("%02d:%02d:%02d", floor($time/3600), floor($time/60)%60, $time%60);
2 голосов
/ 24 июля 2009

Вы можете использовать функцию даты .

Что-то вроде этого должно работать, если $ time находится в формате метки времени unix:

print(date("H:i:s", $time));
1 голос
/ 24 июля 2009

вы должны использовать strftime ($ format, $ timestamp) ... вероятно, как это:

strftime("%H:%M:%S",$time)

greetz

back2dos

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...