返回一行并修改它,然后再从模型发送到codeigniter中的视图

时间:2015-11-05 13:49:36

标签: php codeigniter

我必须从模型中只返回一行到控制器,然后将它传递给控制器​​,我必须向它添加一些参数,如下所示:

$condition = "id =" . "'" . $id . "'";
$this->db->select('*');
$this->db->from('subject');
$this->db->where($condition);
$this->db->limit(1);
$query = $this->db->get();

if ($query->num_rows() == 1) {
return $query->result(); 
} else {
return false;
}

我想在将其返回控制器

时做类似的事情
if ($query->num_rows() == 1) {
$rows[]=$query->result(); 
$rows['main1']='aaaa';
return $query->result(); 
} else {
return false;
}

2 个答案:

答案 0 :(得分:0)

使用$query->row()从数据库中获取单行,您可以将条件指示为$this->db->where('id', $id);

    $this->db->select('*');
    $this->db->from('subject');
    $this->db->where('id', $id);
    $this->db->limit(1);
    $query = $this->db->get();
    if ($query->num_rows() == 1) {
       $res= $query->row();
       return $res->column_name;
    } else {
        return false;
    }

在控制器中

function your_function() {
        $this->load->model('your_model');
        $res['name'] = $this->your_model->your_function($id);
       $this->load->view('your_view',$res);
    }

答案 1 :(得分:0)

抓住row_array并为其附加一个值:

if($query->num_rows() == 1){

    $resultArray = $query->row_array();
    $resultArray['main1']='aaaa';

    return $resultArray;

} else {

    return array();

}