Вы можете изменить свою функцию следующим образом:
function getUsers($conditions = array())
{
if (is_array($conditions) && count($conditions) > 0) {
foreach ($conditions as $condition) {
$this->db->where($condition['where'], $condition['value']);
}
}
// return results...
}
И тогда вы можете сделать это:
$conditions = array(
array('where' => 'country_symbol =', 'value' => $this->loggedInUser->country_symbol),
array('where' => 'zip_code', 'value' => '12345'),
// and so on...
)
$users = $this->search_model->getUsers($conditions);
Я не тестировал этот код, но это основная идея.Вам нужно будет перебрать массив условий и применить каждое условие с помощью $this->db->where()
или аналогичной функции.