Om het resultaat te ordenen volgens de volgorde in uw array, kunt u het volgende doen:
$array_of_ordered_ids = array(4,5,2,6);
Omdat je de volgorde van de nummers al kent, kun je de Mysql FIELD()
functie:
ORDER BY FIELD(id, 4, 5, 2, 6);
Om zo'n string te maken, kun je implode
gebruiken
:
$order = sprintf('FIELD(id, %s)', implode(', ', $array_of_ordered_ids));
Probeer het eens:
$array_of_ordered_ids = array(4,5,2,6);
$this->db->where_in('id', $array_of_ordered_ids);
$order = sprintf('FIELD(id, %s)', implode(', ', $array_of_ordered_ids));
$this->db->order_by($order);