De array die u probeert door te geven, is een multidimensionale array. Probeer in plaats daarvan dit:
$ids = array();
foreach ($query->result_array() as $id)
{
$ids[] = $id['id'];
}
$this->db->where_in('id', $ids);
U kunt de query->result_array() niet afvlakken zonder iteratie. Maar als je dit soort vragen veel in je applicatie moet verwerken, en als je>=PHP 5.3 geïnstalleerd hebt, zou je de volgende functie in een Codeigniter-helperbestand (of ergens anders geschikt) kunnen plaatsen om je te helpen bij het afvlakken van arrays:
function flatten(array $array) {
$return = array();
array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
return $return;
}
En in jouw geval gebruik je het als volgt:
$ids = flatten($query->result_array());
$this->db->where_in('id', $ids);