尝试使用Laravel中的foreach获取非对象错误的属性

时间:2018-01-19 05:37:24

标签: php foreach laravel-5.2

首先是larval的新手,我想在选项字段中选择要在数据库中插入的名称,以便我编写我的代码,如下所示

<select class="form-control select2" name="disease[]" multiple>
<?php $diseases=DB::table('diseases')->get();?>
@if($diseases)
  @foreach($diseases as  $disease)
      <option value="{{$disease->id}}" @if(!empty($result->disease_id))
          <?php $get_disease=json_decode($result->disease_id);?>
              @foreach($get_disease as $g_d)
                   @if($g_d->id==$disease->disease_id)
                        selected="selected"
                   @endif
              @endforeach
           @endif>{{ $disease->name }}</option>
   @endforeach
 @endif
</select>

但是使用此代码我收到的错误如Trying to get property of non-object

2 个答案:

答案 0 :(得分:0)

在将结果传递给foreach

之前,您可以检查$ result是否为null

答案 1 :(得分:-1)

您应该检查$result是数组还是对象。如果是数组,则必须使用[]而不是->