अपने सरणी में क्रम के अनुसार परिणाम को क्रमित करने के लिए, आप निम्न कार्य कर सकते हैं:
$array_of_ordered_ids = array(4,5,2,6);
जैसा कि आप पहले से ही संख्याओं के क्रम को जानते हैं, आप Mysql FIELD()
समारोह:
ORDER BY FIELD(id, 4, 5, 2, 6);
ऐसी स्ट्रिंग बनाने के लिए, आप implode
का उपयोग कर सकते हैं
:
$order = sprintf('FIELD(id, %s)', implode(', ', $array_of_ordered_ids));
इसे आज़माएं:
$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);