1

CodeIgniter と PHP は初めてです。
私のデータベースでは、ユーザーのステータスを IN 時間と OUT 時間に保存しています。その時間を計算したいのは、特定の日にユーザーがログインした時間です。ユーザーは複数回ログインしたり、特定の日にログアウトしたりする場合があります。
時間の計算方法を教えてください。

時刻の形式は =04:06:37 です。ユーザーが 04:06:37 にログインし、04:09:37 にログアウトした場合、時間差は 3 分 0 秒です。

4

2 に答える 2

3

DateTime::diff()関数はあなたが望むことをします。

例えば

$login    = new DateTime('2012-09-04 14:00:00');
$logout   = new DateTime('2012-09-04 16:00:00');
$interval = $logout->diff($login);
echo $interval->format('%H hours %i minutes %s seconds');
于 2012-08-04T11:28:58.193 に答える
2

を使用して時刻をタイムスタンプに変換しstrtotime()、元の時刻から最新の時刻を減算します。例えば;

$to_time = strtotime("04:09:37");
$from_time = strtotime("04:06:37");
$time_diff = $to_time - $from_time;
echo gmdate('H:i:s', $time_diff);
于 2012-08-04T11:28:50.053 に答える