php - Laravel - 如何在 Blade View 中计算数组中对象的总和

标签 php laravel

我在 Blade View 中有一个 foreach 循环,我在其中列出了具有枢轴属性价格的对象:

                @foreach($transaction->options as $option)
                  <div class="row">
                    <div class="col-md-6">
                      <p>Option description: {{ $option->description }}</p>
                      <p>Price: {{ $option->pivot->price }}</p>
                    </div>
                  </div>
                  <hr>
                @endforeach
                <div class="row">
                  <div class="col-md-6">
                    <h4>Options total: </h4>
                  </div>
                </div>

我想因为我在这里做一个 foreach 循环,计算所有选项的总和,这样我就可以把它写在 Options total: 旁边。

我试过这个:
               @foreach($transaction->options as $option)
                  <div class="row">
                    <div class="col-md-6">
                      <p>Option description: {{ $option->description }}</p>
                      <p>Price: {{ $option->pivot->price }}</p>
                      @php($total += $option->pivot->price)
                    </div>
                  </div>
                  <hr>
                @endforeach
                <div class="row">
                  <div class="col-md-6">
                    <h4>Options total: {{ $total }}</h4>
                  </div>
                </div>

但是,这不起作用,我收到了一个错误:

Undefined variable: total



我怎样才能做到这一点?

最佳答案

首先定义变量:

@php($total = 0);

您还可以通过以下方式获得数据透视列的总和:
$transaction->options()->sum('price')

关于php - Laravel - 如何在 Blade View 中计算数组中对象的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48325043/

相关文章:

php - 写入MySQL失败

javascript - 动态 html 表单值未存储在数据库中

php - 从 mysql 返回数据,其中值等于 URI

javascript - 尽管我的路径是正确的,但在 map 上显示某些内容时,我在 laravel 中收到错误 419

javascript - 使用 Restangular 时出现“Access-Control-Allow-Origin” header 问题

php - 将静态变量分配给非静态变量,方法返回无效的值

php - 用 PHP 实现 ROT13

php - Laravel 单元测试 - POST 请求载荷

laravel - Laravel 背包 4.1 中的多对多关系

Laravel 多个服务器与 AWS 队列一起使用