从数组创建表

时间:2018-09-11 10:42:58

标签: php for-loop foreach html-table

我是PHP新手。我发现了一个简单的foreach的用法,但我想进一步提高。 到现在为止我所做的。 我正在使用“ get”表单方法从API集成中获取一些数据。 我将这些数据转换为数组。每次我有更多的数组。 现在可以说我有4967个阵列。也许以后我会有更少或更多。

所以我得到了

1 --> Login
2 --> Position ID
3 --> ....
4 --> ...
..
..
13 --> Margin
14 --> Login number (let's say 2005)
15 --> Position Id number (let's say 100)

所以特别是我想要类似下面的东西。每次创建一个TR,然后创建13 TH,并将其循环播放直至结束

<table>
<tbody>
<tr>
<th>Login</th>
<th>Position ID</th>
..
...
<th>Margin</th>
</tr>
<tr>
<th>12435</th>
<th>132321</th>
..
...
<th>2323</th>
</tr>
<tr>
<th>342243</th>
<th>345345</th>
..
...
<th>24324</th>
</tr>
</tbody>
</table>

如果您有某种好意,请给我一些代码准则。我正在阅读3天,但仍无法尝试。

我在php代码中创建数组的最后一件事是

$array = explode('\r\n', $encodejson);

输出是这个

array (
  0 => '"login',
  1 => 'positionId',
  2 => 'openTimestamp',
  3 => 'entryPrice',
  4 => 'direction',
  5 => 'volume',
  6 => 'symbol',
  7 => 'commission',
  8 => 'swap',
  9 => 'bookType',
  10 => 'stake',
  11 => 'spreadBetting',
  12 => 'usedMargin',
  13 => '3004701',
  14 => '394254',
  15 => '2018-07-19T23:23:53.733',
  16 => '1.2495',
  17 => 'BUY',
  18 => '300000.00',
  19 => 'GBPUSD',
  20 => '1.36',
  21 => '0.00',
  22 => 'BOOK_B',
  23 => '0.00',
  24 => 'false',
  25 => '5325.30',

0-12是一分之一 13 -25是另一个

这种情况一直持续到最后(现在让我说我有2483个具有这种结构的数组)

最后更新!!! 我以这种方式完成了工作

$chunks = array_chunk($array, 13);

    echo '<table id = "customers">';
    foreach ($chunks as $chunk) {
        echo '<tr>';
        foreach ($chunk as $val) {
            printf('<td>%s</td>', $val);
        }
        echo '</tr>';
    }
    echo '</table>';

感谢所有人的帮助

1 个答案:

答案 0 :(得分:2)

也许您可以尝试从大数组中制作块。

$chunks = array_chunk($array, 13);
foreach($chunks as $chunk) {
   //form the table here
   echo "<tr>";
   foreach($chuck as $value){
      echo "<th>".$value."</th>";
   }
   echo "</tr>";
}

修改平面数组intu块后,您将分离出模拟1行的子数组。