Вам необходимо создать различные методы модели. Каждый метод должен иметь результаты вывода запросов. В контроллере вы вызываете каждый из этих методов и сохраняете результаты в переменных. Почему бы не сделать это:
Контроллер:
function controller_method(){
$res1 = $this->model_name->get_where_results1($id, $nr);
$res2 = $this->model_name->get_where_results2($id, $nr);
$res3 = $this->model_name->get_where_results3($id, $nr);
}
Модель:
function get_where_results1($id, $nr) {
$this->db->select('*')
->from('x')
->join("")
->where("");
$query = $this->db->get();
return $query->result();
}
function get_where_results2($id, $nr) {
$this->db->select('*')
->from('x')
->join("")
->where("");
$query = $this->db->get();
return $query->result();
}
function get_where_results3($id, $nr) {
$this->db->select('*')
->from('x')
->join("")
->where("");
$query = $this->db->get();
return $query->result();
}
UPDATE - если вы хотите использовать фильтры, я бы так:
контроллер :
function controller_method() {
$res1 = $this->model_name->model_method($filters);
}
Модель:
function model_method($filters) {
$this->db->select('*');
$this->db->from('x');
$this->db->join("");
if ($filters['filt1']) {
$this->db->where("something", $filters['filt1']);
}
if ($filters['filt2']) {
$this->db->where("something", $filters['filt2']);
}
$query = $this->db->get();
return $query->result();
}
вы можете хранить где условия в массиве, и передать этот массив для запроса. – Shridhar
$ array = array ('name' => $ name, 'title' => $ title, 'status' => $ status); $ this-> db-> где ($ array); // Производит: WHERE name = 'Joe' AND title = 'boss' AND status = 'active' – Shridhar
Не то, что я хотел. Я хочу целое, где условие хранится в переменной. Например, я хочу использовать в своем контроллере то, что создает первое условие. Надеюсь, я объяснил это ясно. Например, я хочу, чтобы в переменной сохранялся результат первого, где в другой переменной для хранения результата второго, где ... и т. Д. – Napster33