3 回答

TA貢獻(xiàn)1854條經(jīng)驗(yàn) 獲得超8個贊
<?php
function convertToHoursMins($time, $format = '%02d:%02d') {
if ($time < 1) {
return;
}
$hours = floor($time / 60);
$minutes = ($time % 60);
return sprintf($format, $hours, $minutes);
}
echo convertToHoursMins(250, '%02d hours %02d minutes'); // should output 4 hours 17 minutes

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個贊
您可以通過DateTime擴(kuò)展來實(shí)現(xiàn)此目的,該擴(kuò)展名也可以在大于一天(>= 1440)的分鐘數(shù)內(nèi)工作:
$minutes = 250;
$zero = new DateTime('@0');
$offset = new DateTime('@' . $minutes * 60);
$diff = $zero->diff($offset);
echo $diff->format('%a Days, %h Hours, %i Minutes');

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超7個贊
它需要進(jìn)行一些重構(gòu),以適應(yīng)普通用戶對網(wǎng)站(網(wǎng)絡(luò)系統(tǒng))的期望。
我認(rèn)為,當(dāng)分鐘數(shù)低于10時,必須添加一個前導(dǎo)零。
例如:10:01,而不是10:1
我將代碼更改為接受,$time = 0因?yàn)?:00優(yōu)于24:00。
還有一件事-不可能$time大于1439-23:59,下一個值就是0:00。
function convertToHoursMins($time, $format = '%d:%s') {
settype($time, 'integer');
if ($time < 0 || $time >= 1440) {
return;
}
$hours = floor($time/60);
$minutes = $time%60;
if ($minutes < 10) {
$minutes = '0' . $minutes;
}
return sprintf($format, $hours, $minutes);
}
- 3 回答
- 0 關(guān)注
- 2737 瀏覽
添加回答
舉報