Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Gọi Stored Procedure trong foreach PHP CodeIgniter


Mã trong 'Model' và 'Controller' cần thay đổi để bao gồm code dưới:

Trong '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'] 
        ); 
    } 
}

Trong '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; 
}