CI 模型公用查询函数

    /**
     * 多字段条件查询数据     
     * @param array     $val        array("name" => $value)。name为要操作的字段,value为要操作的值
     * @param int       $limit      数据数目
     * @param int       $offset     开始位置
     * @param string    $show_field 要显示字段
     * @param array     $order      array("name" => $value):
     *                              name为排序依据的字段,
     *                              value为排序的方式【asc (升序,默认)或 desc(降序), 或 random(随机)】                            
     * @return array|boolean 
     */
    public function getColumn($val = array(), $limit = null, $offset = null, $show_field = '*', $order = array()) 
    {
           if (is_array($val) && count($val) > 0)
           {
                $this->db->select($show_field);
                foreach ($val as $name => $value)
              {
                  $name = strtolower(trim($name));
                  if (!empty($name))
                  {
                      $this->db->where($name, $value);
                  }
              }
       }
if (!empty($order)) { foreach ($order as $order_key => $order_value) { $this->db->order_by($order_key, $order_value); } } if( is_numeric($limit) ) { $limit = intval($limit); } else { $limit = null; } if( is_numeric($offset) ) { $offset = intval($offset); } else{ $offset = null; } $query = $this->db->get($this->_table, $limit, $offset); return $query->num_rows() > 0 ? $query->result_object() : FALSE; return FALSE; }

 

posted @ 2013-10-28 11:01  WhoAmMe  阅读(654)  评论(0编辑  收藏  举报