/* * * 多字段条件查询数据 * @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 ; }