「モデル」と「コントローラ」内のコードを変更して、以下に示すコードを含める必要があります。 -
$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'] ); } }
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; }
以上がCodeigniter の foreach ループ内でストアド プロシージャを呼び出すの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。