叶片laravel中的总值之和

时间:2019-03-07 10:51:29

标签: javascript jquery laravel laravel-5.4

我有5个数组,每个数组包含medicine_pricemedicine_quantity
我想要的是添加每个数组的结果。
问题是,我无法获得每个数组的正确结果。

示例:

result1 = medicine_price * medicine_quantity  
result2 = medicine_price * medicine_quantity
result3 = medicine_price * medicine_quantity
result4 = medicine_price * medicine_quantity
result5 = medicine_price * medicine_quantity

total = result1 + result2 + result3 + result4 + result5

这应该是我想要的结果。
而且由于我已经增加了它们,所以可能还会包含更多的数组。

代码:

@php
    $i = 1;
    @endphp
    @foreach($carts as $cart)

    {!! $cart->medicine_quantity !!}

    @php
    $value=  $cart->medicine_price  * $cart->medicine_quantity;
    echo "<input type='hidden' id='sample$i' value='$value'>";

    $i++
    @endphp

    @endforeach

    @php
    echo "$Total_price"
    @endphp

2 个答案:

答案 0 :(得分:0)

有一种更干净的方法可以做到这一点

使用mutator来计算购物车总数

class Cart extends Model
{
    protected $appends =['total_price'];

    public function getTotalPriceAttribute()
    {
        return $this->medicine_price * $this->medicine_quantity;
    }
}

然后访问它$cart->total_price

对于全部购物车,您可以像这样使用收集方法sum

$total = $carts->sum('total_price');

您的刀片视图将是这样

@foreach($carts as $i => $cart)
{{ $cart->medicine_quantity }}
<input type='hidden' id='sample{{ $i }}' value='{{ $cart->total_price }}'>
@endforeach

{{ $carts->sum('total_price') }}

答案 1 :(得分:0)

投票总数 {{$ list-> sum('voters')}}