/**
* 用户模型, 完整CURD示例 * @Chenwei */class User_model extends CI_model{ public function __construct() { parent::__constrcut(); }/**
* 查询用户信息, 这里不建议使用单一id参数作为条件, 为了便于控制器自己组装条件复用此模型方法 * @param array 格式如: $where = array('id'=>1); * @return array */ public function userInfo($where = array()) { if($where && is_array($where)) { $res = $this->db->select('id, username, age')->where($where)->get('users');return $res->result_array(); //以二维数组形式返回结果
} else { $res = $this->db->select('id, username, age')->get('users');return $res->result_array();
} }/**
* 添加用户 * @param array 格式如: $data = array('username'=>'Chenwei', 'age'=>'18'); * @reteurn bool */ public function userAdd($data) { if($data && is_array($data)) { $bool = $this->db->insert('users', $data);return $bool;
} else { return false; } }/**
* 删除用户 * @param int $id * @reteurn bool */ public function userDel($id) { if($id) { $where = array('id'=>$id);$bool = $this->db->where($where)->delete('users');
return $bool;
} else { return false; } }/**
* 修改用户 * @param array $where 条件 * @param array $data 新数据 * @reteurn bool */ public function userEdit($where, $data) { if($where && is_array($where)) { $bool = $this->db->where($where)->update('users', $data);return $bool;
} else { return false; } }}/**
* 几点注意: * 1. 模型类名字User_model首字母大写, 其余字母小写, 继承基础模型类CI_Model * 2. 类文件名 application/models/user_model.php * 3. 控制器中如何载入此模型 : $this->load->model('User_model', 'user'); 这是以user为对象名引入; $this->load->model('User_model'); 这是默认以User_model为对象名引入. 模型文件支持子目录; 如果类文件在application/models/blog/user_model.php中, 可以这样引入: $this->load->model('blog/User_model'); * 4. 如果有需要, 你可以设置自动加载, 在 application/config/autoload.php文件中. * 5. 如果没有设置自动连接数据库, 加在模型的时候可以设置连接, 像这样 $this->load->model('User_model', '', TRUE); */Ps:
这里是一个联合查询的例子, 有需要可以尝试:$res = $this->db->select('p.id, p.uid, p.order_no, p.amount, p.pay_way, p.pay_type, p.pay_bank, p.pay_time, p.goods_type, p.contact_tel, p.detail_desc, p.add_time, u.username')->from('payment as p')->join('users as u', 'p.uid = u.id')->order_by('p.id', 'desc')->get();