Как удалить одинарные кавычки в инструкции для подготовки?

Мой запрос выглядит так:

$group_id = $session['group_id']; $sql = "SELECT * FROM notification WHERE group_id IN(?)"; $result = $this->db->query($sql, array($group_id))->result_array(); 

Когда я добавляю: echo $this->db->last_query();die(); , результат выглядит следующим образом:

 SELECT * FROM notification WHERE group_id IN('1,13,2') 

Я хочу удалить одинарные кавычки, чтобы результат был следующим:

 SELECT * FROM notification WHERE group_id IN(1,13,2) 

Как удалить одинарные кавычки в инструкции для подготовки?

Solutions Collecting From Web of "Как удалить одинарные кавычки в инструкции для подготовки?"

Я предпочитаю, чтобы вы могли использовать команду where_in, как показано ниже:

 $this->db->select('*'); $this->db->where_in('group_id',$group_id); $this->db->get('notification'); 

Все, что вам нужно сделать, это создать массив идентификаторов групп. Попробуйте следующее

 $group_id = explode(',',$session['group_id']); $this->db->select('*'); $this->db->where_in('group_id',$group_id); $this->db->get('notification'); 

это будет работать

Вы можете это сделать следующим образом:

$ session ['group_id'] , вероятно, является строкой. поэтому вы можете преобразовать эту строку в массив.

 $group_id = explode(",", $session['group_id']); 

Теперь $ group_id уже является массивом. Итак, в нижнем выражении замените массив ($ group_id) на «$ group_id» :

 $result = $this->db->query($sql, array($group_id))->result_array(); 

поэтому весь код будет выглядеть так:

 $group_id = explode(",", $session['group_id']); $sql = "SELECT * FROM notification WHERE group_id IN(?)"; $result = $this->db->query($sql, array($group_id))->result_array();