php - 在php中添加爆炸时间
问题描述
我有一个表服务字段是 Proc_ID、Proc_No、Proc_Services、Proc_time 和 Proc_Price。我想添加所有服务的过程时间(Proc_Time)。
这是代码
If
00:15:00
00:30:00
答案是 00:45:00.. 但我的代码得到了错误的答案。如果开始时间是上午 9:00,服务 1 是 00:15:00,服务 2 是 00:30:00,则预订结束时间是 9:45。
$dt = $_POST['restime'];
$p1 = $_POST['dermaproc'];
$tmp = "";
foreach ($p1 as $key) {
$tmp .= $key;
}
$today = strtotime("TODAY");
$sql3 = "SELECT * FROM services WHERE Proc_ID = '$tmp' ";
$res3 = $conx->query($sql3);
$row3 = $res3->fetch_assoc();
$explode = explode(",", $tmp);
foreach ($explode as $key1) {
$sql4 = "SELECT Proc_Time FROM services WHERE Proc_ID = '$key1'";
$res4 = $conx->query($sql4);
$row4 = $res4->fetch_assoc();
$pt = $row4['Proc_Time'];
$m_time1 = strtotime($dt) - $today;
$m_time2 = strtotime($pt) - $today;
$m_total = $m_time1 + $m_time2 + $today;
$etime = date('h:i:s', $m_total);
echo $etime;
解决方案
您需要将每个过程的所有时间相加,然后将其添加到开始时间,所以这个循环围绕每个过程(我假设它$_POST['dermaproc']
包含一个过程列表),它只是将每个过程的时间相加在循环。在循环之后,它将总时间添加到约会开始时间。
$dt = $_POST['restime'];
$p1 = $_POST['dermaproc'];
$today = strtotime("TODAY");
$m_total = 0;
foreach ($p1 as $key1) {
$sql4 = "SELECT Proc_Time FROM services WHERE Proc_ID = '$key1'";
$res4 = $conx->query($sql4);
$row4 = $res4->fetch_assoc();
$m_total += strtotime($row4['Proc_Time']) - $today;
}
$etime = date('H:i:s', $m_total+strtotime($dt));
echo $etime;
推荐阅读
- python - 如何使用 Jinja(在 Flask 中)处理复杂的报告?
- c# - 无法加载 DLL 'SqlServerSpatial150.dll':找不到指定的模块。(仅在产品上)
- python - For循环并按名称选择
- python - 为什么我不能通过硒单击按钮
- vue.js - 指令 Dragula 更新挂钩中的错误:“TypeError:无法读取未定义的属性 'drake'”
- swift - 如何在 4 行之后在集合视图中插入图像?
- python - 我看不到任何使用的副本,但我收到消息“正在尝试在 DataFrame 中的切片副本上设置值”
- excel-formula - excel公式中的动态
- javascript - 引导模式 ID 在 vue.js 方法中用于显示和隐藏模式
- pyspark - PySpark:我认为我的 GroupBy 将函数应用于整个列而不是唯一的子组