blade 中使用 foreach 双循环,只想第一层循环输出值,第二层循环给变量赋值但不输出,怎么在第二层循环中赋值?

有两个循环,需求是输出页面上的值得个数应该只有第一层循环的个数。
我想的是在第一层循环里面定义一个变量,然后在第二层循环里面给变量赋值,最后利用第一层循环输出变量值。
但是在第二层循环里面给变量赋值不行。

 @foreach($departs as $item)
                    @php($score = 0)
                    @foreach($deductMarks as $m)
                        @if($m->operator_depart_id==$item->id)
                     {{--<td>{{$m->sum}}</td>@break;--}}
                     $score = {{$m->sum}} 这里怎么赋值呢
                    {{-- @else
                     <td>0</td>@break(2);--}}
                 @endif
                 @endforeach
             <td>{{$score}}</td>
         @endforeach

有没有解决办法或者更好的方法,请教一下大家,谢谢。

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

@php($score = $m->sum)

5年前 评论
yaoyao (楼主) 5年前
ㅤㅤ (作者) 5年前
yaoyao (楼主) 5年前
yaoyao (楼主) 5年前
讨论数量: 7

问题没看太懂。

5年前 评论
yaoyao (楼主) 5年前
命中水
<? $store = $m->sum;  ?>
5年前 评论
yaoyao (楼主) 5年前

@php($score = $m->sum)

5年前 评论
yaoyao (楼主) 5年前
ㅤㅤ (作者) 5年前
yaoyao (楼主) 5年前
yaoyao (楼主) 5年前

不建议在blade执行这样的操作,为何不在controller或者service中处理好数据,直接渲染到模板显示就好了

5年前 评论
yaoyao (楼主) 5年前
野犭

为何不尝试下 js

5年前 评论

@青风百里

file

 @foreach($depart as $d)
            <tr>
                <td>{{$d->depart_name}}</td>
                @foreach($departs as $item)
                    @php($score = 0)
                    @foreach($deductMarks as $m)
                        @if($m->depart_id==$d->id&&$m->operator_depart_id==$item->id)
                     {{--<td>{{$m->sum}}</td>@break;--}}
                            @php($score = $m->sum)
                    {{-- @else
                     <td>0</td>@break(2);--}}
                 @endif
                 @endforeach
             <td>{{$score}}</td>
         @endforeach
5年前 评论

@yaoyao 这个只是编辑器的问题,它认为 $m 不存在。它比较笨。

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!