如何在CodeIgniter的where子句中使用数组值

时间:2017-08-16 09:48:22

标签: sql arrays codeigniter loops

我正在尝试检查where条件中的数组值。

我的尝试:

$con=array('ad_no',$ao);
$this->db->where('ad_no',$con); 
$query = $this->db->get('duration');
$r = $query->result_array(); 

但是我收到了以下错误:

  

'where子句'中的未知列'array'

4 个答案:

答案 0 :(得分:1)

也许你可以尝试这样:

$con=array('ad_no' => $ao);
$this->db->where($con); 
$query = $this->db->get('duration');
$r = $query->result_array();

我希望如果代码没有运行,这个答案可以帮助你注意我。

答案 1 :(得分:0)

尝试使用此更新批处理来收集数组中的数据,而不是再次在循环上再次执行查询。

$data = array();
foreach($ad_no as $key=>$id){  
  $data[] = array(
   'ad_no' => $id
  );
}
$query = $this->db->update_batch('duration',$data,'ad_no');

答案 2 :(得分:0)

对于在codeigniter中使用where子句,你也可以这样做:

$data['ad_no'] = $ao; 
$query = $this->db->get_where('duration',$data);
$r = $query->result_array();

您的代码看起来也不错。

答案 3 :(得分:-1)

尝试循环:

foreach($ad_no as $key=>$id){               
    $this->db->where('ad_no',$id); 
    $query = $this->db->get('duration');
    $r = $query->result_array(); 
}