Foreach仅返回第一个值

时间:2018-10-18 02:03:54

标签: laravel foreach

不确定为什么没有获得全部价值 在我看来

<?php $sum_selfmark =0?>
  @foreach
      ($criteria_criteriamarks as $criteria_criteriamark)

      SelfMark:{{$criteria_criteriamark->selfmark}}
      <?php $sum_selfmark+= $criteria_criteriamark->selfmark ?>

  @endforeach
      <p>Total:{{$sum_selfmark}}</p>

在我的控制器中

 public function go_to_self_marking($id){
    $criteria=Criteria::find($id);
    $criteria_criteriamarks =$criteria->criteriamarks;
    return view('criterias/self-marking')
    ->with('criteria_criteriamarks',$criteria_criteriamarks);
    }

2 个答案:

答案 0 :(得分:2)

您正在尝试为每个1行。因为$criteria=Criteria::find($id);仅返回1行。

如果要为每个变量使用$criteria=Criteria::all();,它将返回“条件表”中的所有行。

答案 1 :(得分:0)

首先,您是否尝试过死掉(dd)$ criteria-> criteriamarks?这样我们就可以检查您的循环发生了什么。

好像@foreach循环没有问题。