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

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

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 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年前 评论

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