我正在寻找一种方法来在查询的第一个结果中返回精确列的值。
查询结果始终包含1行,其中包含以下列:
ID
PW
RANK
我试图只获得排名值,以便将其推入会话变量。
我试过搞乱:
$row-> $query->row();
但后来我不知道如何只获得rank列的值。理想情况下,我想获得该值,然后返回它以允许我的控制器在会话变量中设置它(在模型中执行它会更容易但会打破MVC模式,对吗?)
我该怎么做?
由于
答案 0 :(得分:0)
让控制器调用返回该值的模型中的函数。假设模型具有函数名get_rank()
public function get_rank($id)
{
// assumes your ID is an int
$id = (int)$id;
// avoid wasting a query
if ($id < 1) return FALSE;
// build query
$this->db->select('rank');
$this->db->from('YOUR_TABLE');
$this->db->where('id', $id);
// maybe some sorting / limiting here if you need it
// get result
$rs = $this->db->get();
if ($rs->num_rows() > 0)
{
// just get the first row
$row = $rs->row();
return $row->rank;
}
return FALSE;
}