2017-07-07 40 views
0

我正在嘗試創建一個程序,它計算開始時間和結束時間,並獲取兩者之間的時間以查看工作了多少個小時(開始和停止變量是時間值從實際代碼數據庫)如何操作php時間數據並以小時爲單位獲得結果:分鐘格式

這裏取而代之的則是一個例子:

$start = "11:15:35" 
$stop = "17:30:13" 


$start2 = date('G:i' ,strtotime($start)); 
$stop2 = date('G:i' ,strtotime($stop)); 

echo $stop2 ."<br>". $start2; 
echo "<br><br>"; 
echo $stop2 - $start2; 

我需要一個像6.25或6小時和15分鐘的代碼來輸出不同的是,它是目前唯一做幾小時,輸出一個6.

我有tr IED $stop2[1] & start2[1]

和周圍不斷變化的「G:我是從http://php.net/manual/en/function.date.php

與各種其他字母有點抱歉,如果這是一個簡單的問題,任何答案感謝!

編輯:拼錯分鐘

+1

如果這是什麼包過子時?沒有日期的時間很難處理。請記住'日期'是處理日期/日期時間值,而不是任意時間*間隔*。 – tadman

+0

對不起,我忘了提及,我在MySQL表中有一個日期列,並可能會添加功能以允許將來在午夜或某種方式來處理它 – Kaeder

回答

0

試試這個

$hour_one = "17:30:13"; 
$hour_two = "11:15:35"; 

$h = strtotime($hour_one); 
$h2 = strtotime($hour_two); 

$minute = date("i", $h2); 
$second = date("s", $h2); 
$hour = date("H", $h2); 

$convert = strtotime("-$minute minutes", $h); 
$convert = strtotime("-$second seconds", $convert); 
$convert = strtotime("-$hour hours", $convert); 
$new_time = date('H:i:s', $convert); 

echo $new_time; 
+0

謝謝!即使在更新時間的情況下,它對數據庫也很有效。 :) – Kaeder

2

簡單的方式來獲得時間之間的區別如下

 

    $a = new DateTime('11:15:35'); 
    $b = new DateTime('17:30:13'); 
    $interval = $a->diff($b); 

    echo $interval->format("%H:%i:%S"); 

相關問題