【问题标题】:Passing Array from Controller to Model CodeIgniter将数组从控制器传递到模型 CodeIgniter
【发布时间】:2016-05-25 01:20:15
【问题描述】:

我在 Code Igniter 中将数组从 Controller 传递到 Model 以进行进一步处理时遇到了麻烦。

控制器:

public function list_out(){

    $this->show_pagination();

    $action = array(
        'page'=>'public/'.$this->class_name.'/list',
        'title'=>'My Title',
        'success'=>$this->success,
        'data'=>$this->public_model->my_function(array('make'=>'Apple','color'=>'Black'))
    );

    $this->public_page($action);
}

型号:

public function my_function($arr){      

    $this->db->select('main_tbl.*,image_table.image_url');
    $this->db->from('main_tbl');        
    $this->db->join('image_tbl','image_tbl.prod_id=main_tbl.prod_id');
    $this->db->where('main_tbl.prod_status',1);
    $table = 'main_tbl';

    for ($i = 0; $i <  count($arr); $i++) {
        $key=key($arr);
        $val=$arr[$key];
        if ($val<> ' ') {
            $this->db->where($table.'.'.$key,$val);
        }
        next($arr);
    }   

    $this->db->where('image_tbl.image_cover',1);
    $this->db->order_by('prod_id','desc');
    $query = $this->db->get();  
    return $query->result();

}

错误:

Message: key() 期望参数 1 是数组,字符串给定 Message: next() 期望参数 1 是数组,给定字符串

当同一个数组放在Model中的my_function()里面时,效果很好。

例如:

public my_function(){

  $arr = array(
      'make'=>'Apple',
      'color'=>'Black'
  );

  $this->db->select('main_tbl.*,image_table.image_url');
  ........


}

这可能是什么问题?任何帮助将不胜感激。

提前致谢。

【问题讨论】:

    标签: php mysql codeigniter


    【解决方案1】:

    请这样传递数组

    public function list_out(){
    
        $this->show_pagination();
        $arr['make'] = 'Apple';
        $arr['color'] = 'Black';
        $action = array(
            'page'=>'public/'.$this->class_name.'/list',
            'title'=>'My Title',
            'success'=>$this->success,
            'data'=>$this->public_model->my_function($arr)
        );
    
        $this->public_page($action);
    }
    

    【讨论】:

      猜你喜欢
      • 2012-11-04
      • 2012-12-12
      • 1970-01-01
      • 1970-01-01
      • 2014-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-27
      相关资源
      最近更新 更多