dポイントプレゼントキャンペーン実施中!

お世話になります。

PHP、UNIXタイムでの時間計算についてなのですが、
例えば勤怠での実働時間を計算したい場合で、
日をまたがった時の処理です。

//出勤時間
$uIn_date = strtotime("2009/02/01 16:45:00");
//退勤時間
$uOut_date = strtotime("2009/02/02 10:00:00");
// 退勤時間-出勤時間
$jitsu = ($uOut_date - $uIn_date);

$h = (int)($jitsu /3600);
$m=(int)($jitsu % 3600 / 60);
$kei= sprintf("%02d:%02d", $h, $m);

$keiが17:50の値が帰ってきます。
本来であれば、17:15なのですが。

ロジックミスでしょうか。
また、ご指導いただけないでしょうか。

初心者な質問で申し訳御座いませんが、
よろしくお願いいたします。

A 回答 (1件)

Win/5.1.4だと17:15になりましたが環境は?


echo $uIn_date;// 1233474300
echo $uOut_date;// 1233536400
echo $kei;// 17:15
strtotimeがおかしいとしたら、date('U')で作成してみては?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!