Php 如何在laravel中获得每个Id的总和并将其分离

Php 如何在laravel中获得每个Id的总和并将其分离,php,laravel,eloquent,Php,Laravel,Eloquent,这是我在控制器中的查询 我的查询结果。。。我想得到单独的项目\u代码的总数 我也试过这个,但它只能得到所有的总和 我的查询结果 我想要达到的结果 "CMUN"{project_code:"CMUN" total:112.19}, "N2"{project_code:"N2" total:4773.19} 您不需要更改查询。 只需更改foreach循环代码 foreach($Monthly_details as $k

这是我在控制器中的查询

我的查询结果。。。我想得到单独的
项目\u代码的总数

我也试过这个,但它只能得到所有的总和

我的查询结果

我想要达到的结果

"CMUN"{project_code:"CMUN"
total:112.19},
"N2"{project_code:"N2"
total:4773.19}

您不需要更改查询。 只需更改foreach循环代码

foreach($Monthly_details as $key){
    if(empty($fetch[$key->project_code])){
        $fetch[$key->project_code]['total'] = 0;
    }
    $fetch[$key->project_code]['total'] += ($key->daily_rate * $key->days) - $key->absent - $key->late - $key->ut;
}
return $fetch;
//调用函数show()的部分


伟大的但是,我如何才能显示总计属于哪个项目的值呢?。我想显示项目代码和总数量,您需要为其编写foreach循环,并访问项目代码作为结果的键,总数量作为调用work()函数的位置的值。请检查我的最新答案。我可以把代码放在哪里?对不起,我只是求求你理解我:(我知道了..在我的vue中,我使用了
v-for=“(fetch,index)in paintdata”
,它显示了对象的索引是基于vue js的,你必须编写它。如果答案对你有帮助,请向上投票。
  public function show($id)
    {
 
        $Days = DB::table('payroll_monthly_attn_project')->where('payroll_monthly_id',$id)->where('assign','PAINTING')
        ->select('payroll_monthly_attn_project.wrk_id','payroll_monthly_attn_project.project_code','payroll_monthly_attn_project.assign','payroll_monthly_attn_project.days');

        $Monthly_details = DB::table('payroll_monthly_payable_details')->where('payroll_monthly_payable_details.payroll_monthly_id', $id)
                           ->select('payroll_monthly_payable_details.daily_rate','payroll_monthly_payable_details.late','payroll_monthly_payable_details.ut','payroll_monthly_payable_details.absent','days.*')
                           ->leftjoinSub($Days,'days',function($join){
                            $join->on('payroll_monthly_payable_details.wrk_id','=','days.wrk_id');    

                           })
                        ->get();

        $fetch = [];
        $grandTotal = 0;
        foreach($Monthly_details as $key){

            $grandTotal += ($key->daily_rate * $key->days) - $key->absent - $key->late - $key->ut;

        }
        $fetch['grandTotal'] = $grandTotal;

        return $fetch;
    }
{grandTotal: 4885.38}
grandTotal: 4885.38
"CMUN"{project_code:"CMUN"
total:112.19},
"N2"{project_code:"N2"
total:4773.19}
foreach($Monthly_details as $key){
    if(empty($fetch[$key->project_code])){
        $fetch[$key->project_code]['total'] = 0;
    }
    $fetch[$key->project_code]['total'] += ($key->daily_rate * $key->days) - $key->absent - $key->late - $key->ut;
}
return $fetch;
$results = work($id);
foreach($results as $projectCode => $total){
   echo $projectCode." total cost is: ".$total;
}