基本上我有一个这样的foreach循环:
foreach($_POST['id'] as $key => $id) {
$qty = $_POST['qty'][$key];
$bin_location = $_POST['bin_location'][$key];
$pdi_required = $_POST['pdi_required'.$key][0];
$pdi_completed = $_POST['pdi_completed'][$key];
$serial_no = $_POST['serial_no'][$key];
$movement_by = $_POST['movement_by'][$key];
$date_moving = $_POST['date_of_movement'][$key];
$special_instructions = $_POST['special_instructions_admin'][$key];
$status = strtolower($_POST['status'][$key]);
$sql_update = "UPDATE products SET status='$status' WHERE job_id='$id'";
$this->db->query($sql_update);
}
if ($status == 'rejected') {
$sql_job_update = "UPDATE jobs SET status='rejected' WHERE job_id='$id'";
} elseif ($status =='pending' || $status =='returning') {
$sql_job_update = "UPDATE jobs SET status='pending' WHERE job_id='$id'";
} else {
$sql_job_update = "UPDATE jobs SET status='approved'";
}
但是,这是我最感兴趣的最后一部分(if ($status == whatever
)。如何从 foreach 中获得最低的可能值?
这是因为我有两个表,jobs
有一个已经完成的工作表,并且是工作products
中请求的产品。如果产品因任何原因被拒绝,则整个工作都是失败的,因此该工作应该具有拒绝状态。如果它没有被拒绝并且只是待处理,则将其设置为待处理。如果所有字段都被接受,则将作业状态设置为接受。
我真正需要的是在 foreach 循环中的任何事件中获取某个状态是否为真,如果为真,则将状态设置为该值。