2016-05-03 15 views
0

PHPスクリプトの時差を計算する必要があります。時間と時間の値があります。私は違いを得るために次のコードを書いた。しかし、常に正解+1の値を返します。

$inTime = '08:30:00'; 
$outTime = '17:48:00'; 
$difference = date('H:i',((strtotime($outTime) - strtotime($inTime)))); 
echo $difference; 

出力は10:18として出力されます。しかし、出力は09:18でなければなりません。私はCodeigniterフレームワークを使用します。私はこのコードをオンラインPHPテスター(http://phptester.net/)で実行し、正しい値を返します。

+0

あなたはのstrtotimeは ":I S H" することができますよろしいですか? – Random

+0

確かに..コードはhttp://phptester.net/ – Hirantha

+0

で正しく実行され、phptester.netは正しい結果を返します...環境問題かもしれません...あなたのPHPバージョンは何ですか? – Random

答えて

0
function datediff($date1, $date2) 
{ 
    $diff = abs(strtotime($date1) - strtotime($date2)); 

    return sprintf 
    (
     "%d Days, %d Hours, %d Mins, %d Seconds", 
     intval($diff/86400), 
     intval(($diff % 86400)/3600), 
     intval(($diff/60) % 60), 
     intval($diff % 60) 
    ); 
} 

$inTime = '08:30:00'; 
$outTime = '17:48:00'; 
print datediff($inTime, $outTime) . "\n"; 

オンラインデモ:Click Here

のみ分間

function datediff($date1, $date2) 
{ 
    $diff = abs(strtotime($date1) - strtotime($date2)); 

    return sprintf 
    (
     "%d Mins", 
     intval(((($diff % 86400)/3600) * 60)) 
    ); 
} 

$inTime = '08:30:00'; 
$outTime = '17:48:00'; 

print datediff($inTime, $outTime) . "\n"; 

出力

558 Mins 

オンラインデモ: Click Here

+0

素晴らしい。数分で違いを知りたいのであれば、どうすればいいですか。 – Hirantha

+0

なぜマイナス投票ですか? – RJParikh

+0

私は知らない。私はそれをしていない。しかし、私はそれを修正します。どうすれば分単位で全体の違いを得ることができますか? – Hirantha

0

これを行う方法はたくさんありますが、個人的にはPHPの時間差関数を使用します。

$inTime = date_create('08:30:0'); 
$outTime = date_create('17:48:00'); 
$difference = date_diff($inTime, $outTime); 
echo $difference->format('%H:%I:%S'); 

出力:

午前9時18分00秒

example

1

チェックアウト、この方法を...

<?php 

$time1 = new DateTime('08:30:00'); 
$time2 = new DateTime('17:48:00'); 
$interval = $time2->diff($time1); 
echo "Time Difference : ".$interval->format('%H hours %i minutes %s seconds'); 

?> 

この意志出力:形式

Time Difference : 09 hours 18 minutes 0 seconds 
+0

@ランダム申し訳ありませんが、私は間違っていました。新しいメソッドで答えを編集しました。 –

+0

@Hiranthaこのメソッドを試してください...あなたのためにうまくいくことを願っています。 –

関連する問題