2016-05-10 1 views
0

今日の深夜と今の時間の差を時間と分で返そうとしています。PHP:今日の真夜中00:00と今の時との時差を返します。

THSは、私がこれまで持っているものです。

$now = date('H:i:s', time()); 
$time1 = strtotime('00:00:00'); 
$time2 = strtotime($now); 
$difference = round(abs($time2 - $time1)/3600,2); 
echo $difference; 

返された値が正しく見えない、返さ差は10:63と表示され、現在の時刻です10時37分であると言います。今はそれが正しくありません。誰かが私が間違っているのを見ることができます。

お時間をいただき、ありがとうございます。

乾杯。

+0

を使用することができます(http://php.net/manual/en/class.datetime.php)、さらに具体的な[ date_diff](http://php.net/manual/en/datetime.diff.php)function – Naruto

答えて

0

これを試して出力時間を設計してください。

$start_time = "00:00:00"; 
$end_time = date("H:i:s", time()); 

$time1 = new DateTime($start_time); 
$time2 = new DateTime($end_time); 
$interval = $time1->diff($time2); 

var_dump($interval); //for details about the interval times 

echo $hour = $interval->format('%h hour'); // hour 
echo $min = $interval->format('%i min'); // min 
echo $sec = $interval->format('%s second');// sec 
0

これは

$start_time = "00:00"; 
$end_time = date("H:i"); 

$time1 = new DateTime($start_time); 
$time2 = new DateTime($end_time); 
$interval = $time1->diff($time2); 

echo $hour = $interval->format('%h hour'); 
echo '<br/>'; 
echo $min = $interval->format('%i min'); 

出力は、あなたがこのcode.Iはそれを貼り付けて実行すると時間

24分

出力が変化します

15であるあなたの答えかもしれません私のマシンから。

+0

こんにちは、最後の質問ですが、時間と分をどのように分に変換すればよいですか? – DCJones

+0

時間を60倍にして分を追加できます。 $時間* 60 + $分。あなたに数分で結果を与えるでしょう。 –

0

また、[日時]に深く行くwanne可能性があります。この短い抜粋

$now = new DateTime(date('H:i:s')); 
$midnight = new DateTime(date('00:00:00')); 
$interval = $now->diff($midnight); 
$result = $interval->format("%H hour(s) and %i minute(s)"); 
関連する問題