我有两个嵌套的foreach循环,我只希望内部循环检查条件。如果满足或不满足,则终止内部循环并返回外部循环。
在我的情况下,根据我对问题的了解,内部循环总是需要运行一次。
问题:两个数组。首先拥有所有选择。第二只选择。现在算出ID。如果匹配=>打印已选中,否则=>未选中。
我尝试过休息;但是内部循环只检查第一项,然后执行其他部分的所有迭代。
@php
foreach($propertyAmenities as $amenity){
foreach($property->amenities as $new){
if( ($amenity->type == 'amenity') && ($amenity->id == $new->id) ){
@endphp
<label class="checkbox-inline control-label">
<input type="checkbox" name="amenity[]" value="{{$amenity->id}}" {{'checked'}}>{{ $amenity->name }}
</label>
@php break;
}
elseif(($amenity->type == 'amenity')){ @endphp
<label class="checkbox-inline control-label">
<input type="checkbox" name="amenity[]" value="{{$amenity->id}}">{{ $amenity->name }}
</label>
@php break;
}
}
}
@endphp
它第一次检查并在下次仅打印ifelse部分时打印“ checked”。我不知道为什么 只检查第一个。
所有其他选项保持未选中状态。
答案 0 :(得分:1)
您可以通过在视图中将选定的选项作为数组传递来简化代码。
label1