一个数组中的多个HTML表(PHP)

时间:2018-08-07 17:20:24

标签: php foreach

我有一个元素数组,其中包含“细分ID”和“帐户ID”。我想为每个细分和每个帐户打印多个HTML表格。

数组:

id 1 |项目10 |第1段|帐户1

id 2 |项目15 |第1段|帐户1

id 3 |项目11 |第2部分|帐户1

id 4 |项目16 |第2部分|帐户2

将打印出3张桌子

结果:

表1(id 1和2)

表2(id 3)

表3(id 4)

这可以通过嵌套的foreach循环来完成吗? 对不起,表示不好。我不知道如何在此编辑器中打印可读的数组。

编辑: 一些代码,如果有帮助的话:

@foreach ($orders as $order)
  <table>
   <thead>
    <tr>
     <th>Product ID</th>
     <th>Segment ID</th>
     <th>Account ID</th>
    </tr>
   </thead>
   <tbody>
    <tr>
     <td>{{ $order->ProductId }}</td>
     <td>{{ $order->SegmentId }}</td>
     <td>{{ $order->AccountId }}</td>
    </tr>
   </tbody>
  </table>
@endforeach

所以这将给出1个包含所有元素的表。

我想获取多个HTML表。 Foreach SegmentId和foreach AccountId。

1 个答案:

答案 0 :(得分:0)

根据需要分割阵列

id 1 | Item 10 | Segment 1 | Account 1

id 2 | Item 15 | Segment 1 | Account 1

id 3 | Item 11 | Segment 2 | Account 1

id 4 | Item 16 | Segment 2 | Account 2

建议您有一个像这样的数组

$array = array('id'=>1,'item'=>10,'segment'=>1,'account'=>1)....

您可以这样做(开箱即用)

$tables = array();
foreach($array as $arr) {
   $segment = $arr['segment'];
   $account = $arr['account'];
   $tables[$segment][$account][] = $arr; //UPDATE [] for multiparts
}

现在您在$ tables中有自己喜欢的顺序,然后就可以像这样

foreach($tables as $segment=>$arr) {
   foreach($arr as $account=>$yourdata) {
      echo "<table><tr>...</tr></table>";
   }
}