codeigniter从控制器传递数组以查看未定义的索引错误

时间:2012-12-16 19:56:02

标签: php codeigniter

将数组传递给视图在此行之后正常工作:foreach($rb_data as $row){<table>}?>但在表格上方的<body>我无法使用<h1><?php echo $rb_data['brand'];?></h1> 我收到的错误是Message: Undefined index: brand。我已经尝试在控制器中使用$data = array()初始化数组,但这没有用。有没有其他方法来初始化数组,以便它可以在foreach语句之前使用?谢谢你看看。 控制器:

    public function community_single($rb){
        $data['rb_data'] =  $this->rootbeer_model->community_single($rb);
        $this->load->view('rb_community_single_view',$data);

    }

型号:

    public function community_single($rb){

        $this->rb_db->select('*');
        $this->rb_db->from('rb_selection');
        $this->rb_db->where('brand',$rb);
        $query = $this->rb_db->get();
        return $query->result_array();
    }

2 个答案:

答案 0 :(得分:0)

我记得我使用row_array()进行单次通话。 CodeIgniter拥有比Windows更好的文档。如果您注意,result_array()将在循环中使用。

答案 1 :(得分:0)

你的$this->rootbeer_model->community_single($rb); 将返回这样的数组 即,rb_data=[[id=>1,value=>'a'],[id=>2,value=>'b'],[id=>3,value=>'c']]

所以首先你需要使用这个函数

来获取你的魔杖行
1. foreach($rb_data as $row){<table>}?>

2. $row = $rb_data->first_row()
   $row = $rb_data->last_row()
   $row = $rb_data->next_row()
   $row = $rb_data->previous_row()

3.$row = $rb_data->row(5);

然后你可以访问`$ row ['band']'

`$rb_data` doesn't contains an index like `band` . `$rb_data` contains only rows