0

分を時間と分に変換するにはどうすればよいですか? 例えば

$dt = new DateTime();
$currDate = date_format($dt, 'Y-m-d');

$startMinutes = 939;

$startT = $currDate . " " . gmdate("H:i", $startMinutes);

このコードは、15: ではなく '2012-09-12 00:15' のようなものを返します...なぜですか?

4

6 に答える 6

8

date 関数と gmdate 関数はどちらも、分ではなく秒を入力として取得します。したがって、あなたがしなければならないことは、あなたの答えを得るためにあなたのstartminutesに60を掛けることだけです.

$startT = $currDate . " " . gmdate("H:i", ($startMinutes * 60));
于 2012-09-12T13:59:43.540 に答える
6

次の式のようなものが機能するはずです。

$hours  = floor($minutes/60); //round down to nearest minute. 
$minutes = $minutes % 60;
于 2012-09-12T13:57:38.580 に答える
2

それを行う非常に迅速な方法、これはうまくいくはずです:

echo date('H:i', strtotime($startMinutes.' minutes'));
于 2012-09-12T13:59:41.777 に答える
1
$dt = new DateTime('now');
$dt->modify('+939 minutes');
echo $dt->format('Y-m-d H:i');
于 2012-09-12T14:02:55.537 に答える
0

これを試して..

$d = floor ($startMinutes / 1440);
$h = floor (($startMinutes - $d * 1440) / 60);
$m = $startMinutes - ($d * 1440) - ($h * 60);

echo "{$startMinutes}min converts to {$d}d {$h}h {$m}m";

そこから繋げればいいのに..

于 2012-09-12T13:55:11.403 に答える