Codeigniter isset() with or condition not working in multiple parameters

Codeigniter isset() with or condition not working in multiple parameters

$viewdata['branch']= $this->input->post('branch'); 
if (isset($viewdata['branch']) || isset($viewdata['address']) || isset($viewdata['timings']) || isset($viewdata['clinic']) || isset($viewdata['latitude']) || isset($viewdata['longitude']) || isset($viewdata['image'])) {
    //print_r($viewdata);exit;
    $logid = $this->Adminmodel->Insertdata("table", $viewdata);
}

为什么 isset() 条件不适用于 Or。它直接插入table。我该怎么办?

在php、$something = isset($_POST['something']) ? $_POST['something'] : NULL; 使用 CodeIgniter 的内置方法,您可以简单地执行此操作:$something = $this->input->post('something');

// Example
$input = $this->input->post('input_name');
如果设置了 input_name's value

$input 将是 input_name's value

如果设置了 input_name's value

$input 将是 NULL

因此,当您在 $input 上再次检查 isset() 时。肯定地,该值已设置并且为空。

参考 Codeigniter Input Class