2016-08-21 41 views
-1

我有這樣的分類排序的數據:Laravel刀片 - 頁眉和頁腳在循環

Category 1, Product 1, Amount 
Category 1, Product 2, Amount 
Category 2, Product 3, Amount 

我喜歡用刀片將其打印出來作爲

Category 1 

Product 1 Amount 
Product 2 Amount 
.... 
Total Amount of Category 1 : xxxxx 


Category 2 

Product 3 Amount 
.... 
Total Amount of Category 2 : xxxxx 
+0

我用 [@]的foreach($的數據爲$行) [@] endforeach 我知道如何顯示的新的類別和金額總計名稱,主要的問題是,我不能檢查哪一行是任何特定類別的最後一行。 –

+0

爲什麼有人給出這個問題-1? –

回答

0

我假設$類是有索引類別,產品和數量的有序多維數組。

@for ($i = 0; $i < count($categories) ; $i++) 
     <?php $category_product_toatl=0; ?> 
     {{ $categories[$i]['category'] }} 
     {{ $categories[$i]['product'] }}  {{ $categories[$i]['amount']}} 
     <?php 
       $category_product_total= $category_product_total+ $categories[$i]['amount']; 
     ?> 
     @for ($j = $i+1; $j < count($categories) ; $j++) 
       @if($categories[$i]['category']== $categories[$j]['category']) 
        {{ $categories[$j]['product'] }}  {{ $categories[$j]['amount']}} 
        <?php 
          $category_product_total= $category_product_total+ $categories[$j]['amount']; 
        ?> 
       @else 
        break; 
       @endif 

     @endfor 
    Total Amount of {{ $category[$i] }} : {{ $category_product_total }} 
@endfor 
+0

感謝您的幫助。 有沒有辦法找到哪一行是最後的任何類別? –

+0

是的,你寫「break」的地方@else部分中的語句是任何類別的最後一行。 –