Codeigniter – Создание собственного помощника

Я пытаюсь создать своего помощника. Сначала я создаю файл под названием HelperModelBase.

Это абстрактный класс.

abstract class Pasaj_Model_Base { public $table_name; public $table_alias; public $class_name; public $lastSql; public function __construct() { $this->class_name = get_class($this); $this->table_name = strtolower($this->class_name); $this->table_name = str_replace('_dbview', '', $this->table_name); } 

и создать метод под названием select

 public function select($where = null, $order = null, $limit = null, $columns = '*') { if (!$columns) $this->db->select('*'); elseif (is_array($columns)) { $columns = implode(',', $columns); $this->db->select($columns); } } 

Как вы видите выше, я делаю операцию простого выбора, но, что я хочу сделать, так это то, что я добавляю одну или несколько операций.

Например, где и порядок для этого. Я добавляю это к моему методу:

 if($where) 

Проблема начинается здесь, потому что у codeigniter есть специальный код для обработки операций.

 $this->db->where(); 

Как я могу это сделать ? Как я могу, чтобы где-то

 $this->db->select(); 

Спасибо .

Наконец я прихожу к этому.

 public function select($where = null, $order = null, $limit = null, $columns = '*') { if (!$columns) $this->db->select('*'); elseif (is_array($columns)) { $columns = implode(',', $columns); $this->db->select($columns); } if($where) $this->db->where($where); if($order) $this->db->order_by($order); if($limit) $this->db->limit($limit); $query = $this->db->get(); return $query; } 

я заметлю о синтаксисе параметров. Может ли над кодом работать?