在 foreach PHP Codeigniter 中调用存储过程

phpserver side programmingprogramming

需要将"Model"和"Controller"内的代码更改为包含下面显示的代码 −

在"Controller"内

$header = $this->model_name->call_head();
foreach($header as $item) {
   $name = $item['name'];
   $array['name'] = $name;
   $array['data'] = $item['data'];
   $child_val = $this->model_name->call_child($name);
   foreach($child_val as $value) {
      $array['child'] = array(
           'child_name' => $value['child_name'],
         'child_data' => $value['child_data']
      );
   }
}

"model"内部

public function call_head() {
   $query = "CALL PROCEDURE_HEAD()";
   $result = $this->db->query($query)->result_array();
   $query->next_result();
   $query->free_result();
   return $result;
}
public function call_child($name) {
   $query = "CALL PROCEDURE_CHILD($name)";
   $result = $this->db->query($query)->result_array();
   $query->next_result();
   $query->free_result();
   return $result;
}

相关文章