我在这里有循环查看图片以供参考..
我有一个名为Supplier Name的专栏
例如,同一供应商名称有两行
所以我需要一个标题
我预期的ouptut是
ABS代理商
供应商名称 - 此处应为标题
mycode
@foreach($prsdkgrids as $prsdkgrid)
<?php if($prsdkgrid->SupplierName == $prsdkgrid->SupplierName){ $SupplierName[] = $prsdkgrid->SupplierName; } ?>
@endforeach
@foreach($prsdkgrids as $prsdkgrid)
<?php if(count($SupplierName) == $SupplierName[$f]) { }else{ echo $f."<tr><td><h3 style='font-size: 15px;'>$prsdkgrid->SupplierName</h3></td></tr>"; } ?>
<tr class="psr_table1_tr" id="PSupdetID<?php echo $prsdkgrid->PSupdetID; ?>" <?php if($prsdkgrid->ApprovalStatus == 1){ echo 'style="background: #d9edf7;"';} ?> >
<td> {{ Form::label('', $prsdkgrid->ArticleNo) }} </td>
<td> {{ Form::label('', $prsdkgrid->Size) }} </td>
<td> {{ Form::label('', $prsdkgrid->SpecialDesc) }} </td>
<td> {{ Form::label('', $prsdkgrid->QtyExp) }} </td>
<td> {{ Form::label('', $prsdkgrid->Coloring) }} </td>
<td> {{ Form::label('', $prsdkgrid->Packaging) }} </td>
<td> {{ Form::label('', $prsdkgrid->Packing) }} </td>
<td> {{ Form::label('', $prsdkgrid->TargetPrice) }} </td>
<td> {{ Form::label('', $prsdkgrid->SupPrice) }} </td>
<td> {{ Form::label('', $prsdkgrid->SupplierName) }}</td>
<td> {{ Form::label('', $prsdkgrid->SupComments) }} </td>
<td> <?php if($prsdkgrid->ApprovalStatus == 0){ ?><div align="center" class="floatleft approvedk" id="ApprvedbyResp<?php echo $prsdkgrid->PSupdetID; ?>">
<li><a class="prs_add_link" href="#"><input class="save_btn Approve" type="button" onclick="ApprvedbyResp(<?php echo $prsdkgrid->PSupdetID; ?>)" value="Approve"></a></li></div><?php } ?> </td>
</tr> <?php $f++; ?>
@endforeach
答案 0 :(得分:0)
您可以将supplier_name存储在变量中,在循环中只需比较变量和供应商名称即可。一个简单的方法是这样的,因为您正在使用foreach()
$tmp_supplier_name = '';
foreach($prsdkgrids as $prsdkgrid){
echo ($tmp_supplier_name != $prsdkgrid->supplier_name) ? '<tr>SUppliername</tr>' : ''; //compare
$tmp_supplier_name = $prsdkgrid->supplier_name; //store the suppliername that was compared
}
或者另一种方法是尝试操纵你的数组,它应该是这样的,非常易读。
Array(
['supplierA'] =>
Array(
[0] => array(.....)
[1] => array(.....)
),
['supplierB'] =>
Array(
[0] => array(.....)
[1] => array(.....)
)
)
重新创建数组示例:
$new_array = [];
$tmp_supplier_name = '';
foreach($prsdkgrids as $prsdkgrid){
if($tmp_supplier_name != $prsdkgrid->supplier_name){
$tmp_supplier_name = $prsdkgrid->supplier_name;
}else{
$new_array[$prsdkgrid->supplier_name]['opt1'] = $prsdkgrid->opt1;
$new_array[$prsdkgrid->supplier_name]['opt2'] = $prsdkgrid->opt2;
//and so on
}
}