2016-08-27 3 views
0

これを理解してください。画像が下に示されているので、同じinventory_record_idの総量を取得したいだけです。そしてその合計を配列名$salesQtyArrayHldrに保存したかったのです。ただし、常に定義されていないオフセット0エラーが返されます。助けてください。ここに私のコードです。定義されていないオフセット:laravel 5.2でarrayholderを使用するループの後で0

enter image description here

<?php 
    $salesQtyArrayHldr = array(); 
?> 

    @foreach($inventory as $val) 

    <?php 
      for($i = 0; $i < count($val->sales); $i++){ 
      if($val->id == $val->sales[$i]->inventory_record_id){ 
       $salesQtyArrayHldr[$i] += $val->sales[$i]->quantity; 
      } 
      } 
      var_dump($salesQtyArrayHldr); 
    ?> 

エラー

enter image description here

答えて

0
for($i = 0; $i < count($val->sales); $i++){ 
       if($val->id == $val->sales[$i]->inventory_record_id){ 
        if(isset($salesQtyArrayHldr[$val->id])){ 
         $salesQtyArrayHldr[$val->id] += $val->sales[$i]->quantity; 
        }else{ 
        $salesQtyArrayHldr[$val->id] = 0; 
        $salesQtyArrayHldr[$val->id] += $val->sales[$i]->quantity; 
        } 
       } 
      } 
0

は、おそらくの構造を確認するための配列$ val->販売 使用ヘルパーDD()でそのようなキーが存在しませんこの変数。

2

ISSETあればチェック:

if (isset($val->sales[$i])) { 
    // action... 
} 
+0

それが機能していません。 – Eli

+0

ああ..私は今参照してください。エラーはここにあります:$ salesQtyArrayHldr [$ i] + = $ val-> sales [$ i] - > quantity;おそらく$ salesQtyArrayHldr [$ i]は設定されていません。 – Vuer

+0

(isset($ salesQtyArrayHldr [$ i]))ならば、これは私がすべきことですか? – Eli

関連する問題