2016-08-23 162 views
1

下面給出的是我的代碼,我試圖做的是獲取員工的in_time和out time,基本上我構建了一個考勤系統,系統將在其中記錄員工的計時,他在辦公室,當他不在......下面是我從中獲取下表中的員工進出時間的MySQL表格,您可以清楚地看到有關該員工的兩次會議日期 1)從11:00:00開始到13:00:00結束 2)從14:00:00開始abd在17:00:00結束在php中計算積累

現在你可以從代碼中看到我我正在創建一個in_time和out_time的數組。 這裏是一個棘手的路徑... 現在我想添加第一次會議的總時間,即11:00:00 + 13:00:00和第二次會議的時間相同,那麼我想添加第一次會話和第二次會話的時間... 我試着用strntotime機能的研究,但由於我的進出時間是在陣列因此我力工作 SO好心幫我實現這一點,並幫助我灌輸意義上我的腦海裏如何實現這一目標?

enter image description here

///get employee timings w.r.t to date 
$sql="SELECT * from employee_timings where emp_timing_date='$date'"; 
$query=mysql_query($sql); 
$array_in_time=array(); 
$array_out_time=array(); 
while ($result=mysql_fetch_array($query)) { 
    # code... 
    array_push($array_in_time, $result['emp_in_time']); 
    array_push($array_out_time,$result['emp_out_time']); 
}  

回答

0

試着做以下修改while循環

$emp_accumulated_time = array(); 

while ($result=mysql_fetch_array($query)) { 
    # calculate time interval for each session 
    $time_interval = strtotime($result['emp_out_time']) - strtotime($result['emp_in_time']); 

    # accumulated session time for each employee 
    $emp_accumulated_time[$query['emp_timing_employee_id']] += time_interval; 
} 

現在你可以使用$emp_accumulated_time[$employee_id]

+0

先生,我不力讓你做了什麼 – iqra

+0

的代碼,你沒有得到的哪一部分檢索empoyee累計會話時間? – Jason

+0

@json我試着回顯$ time_interval,結果是720010800那是什麼 – iqra