使用PHP显示等待时间

时间:2013-03-25 16:21:15

标签: php datetime time

我希望使用这个简单的计算显示患者的等待时间;

waiting time (the clock time - the arrival time)

以插入形式;我使用以下代码将current_time(arrival_time)插入已成功的PATIENT表中。

// validate arrival time 
date_default_timezone_set('Europe/London');
$time = time();

$sql="INSERT INTO Patient(Forename, Surname, Gender, Date_Of_Birth, Address, Patient_History, Illness, Priority, Arrival_Time)
VALUES('$patient_name', '$patient_lastname', '$gender', '$date', '$address', '$history', '$illness', '$priority', '$time')";

这是输出代码;

<?php

$conn = mysqli_connect("localhost","root","") or die ("No connection");
mysqli_select_db($conn, "a&e") or die('Could not select database.');

$query = "SELECT PatientID, Forename, Surname, Gender, Illness, Priority, Arrival_Time, TIMEDIFF(Arrival_time,NOW()) as Waiting_Time FROM Patient";
$result = mysqli_query($conn, $query) or die("Invalid query");

echo "<table border='1'>
<tr>
<th>PatientID</th>
<th>Forename</th>
<th>Surname</th>
<th>Gender</th>
<th>Illness</th>
<th>Priority</th>
<th>Waiting_Time</th>
</tr>";

 while ($row = $result->fetch_object()){


  echo "<tr>
  <td>" . $row->PatientID . "</td>
  <td>" . $row->Forename . "</td>
  <td>" . $row->Surname . "</td>
  <td>" . $row->Gender . "</td>
  <td>" . $row->Illness . "</td>
  <td>" . $row->Priority . "</td>
  <td>" . $row->Waiting_Time . "</td>
  </tr>";

}

echo "</table>";
mysqli_close($conn);
?>

如何使用以下计算计算等待时间; (时钟时间 - 到达时间)

**请注意:Arrival_Time类型为TIME。

2 个答案:

答案 0 :(得分:0)

您只需从当前时间中减去数据库中的时间,然后使用date

对其进行格式化
$waiting_time = date("H:i:s", time() - $arrival_time);

答案 1 :(得分:0)

我们今天已经完成了这项工作。

Simple time function to calculate waiting time

您不需要在PHP中执行此操作,因为它已在查询中完成$ row-&gt; Waiting_Time已经是时钟时间与到达时间。

如果您现在正在寻找基于PHP的解决方案,而不是正确的解决方案,那么您显然是在尝试做一些功课,我不应该首先帮助您(更加愚弄我)不仅如此,而且您可以告诉你的讲师/老师,他们是一个强迫你使用PHP解决方案的白痴,这个解决方案可以通过内置的MySQL函数更好地处理。