将PHP数组内容放入表(或DIV)

时间:2016-08-05 15:04:47

标签: php html arrays bash

我正在使用shell_exec来获取一些bash行输出。这将以文本形式返回:

22/tcp  open   ssh
80/tcp  open   http
153/tcp closed unknown
443/tcp open   https

然后我使用preg_split创建一个数组,使用' / \ s + /' 在空格和换行符上拆分,回显阵列得到:

Array
(
    [0] => 22/tcp
    [1] => open
    [2] => ssh
    [3] => 80/tcp
    [4] => open
    [5] => http
    [6] => 153/tcp
    [7] => closed
    [8] => unknown
    [9] => 443/tcp
    [10] => open
    [11] => https
)

我希望能够将这些值放入3列表(甚至更好的DIV集合)中,这些表在数据集扩展时展开(因此从bash输出返回的n行循环)。我如何将上面的数组放到table / div中,其中这个例子中的行看起来像:

 ____________________________
| 22/tcp  |  open  |   ssh   |
| 80/tcp  |  open  |   http  |
| 153/tcp | closed | unknown |
| 443/tcp |  open  |  https  |

1 个答案:

答案 0 :(得分:2)

快速循环:

for ( $i = 0, $len = count($array); $i < $len; $i += 3)
{
    echo '<tr>
              <td>' . $array[$i] . '</td>
              <td>' . $array[$i+1] . '</td>
              <td>' . $array[$i+2] . '</td>
    </tr>';
}

您可以在行动here中看到它。

您也可以使用array_chunk()来获得所需的结果:

foreach ( array_chunk($array, 3) as $chunk )
{
    echo '<tr>
              <td>' . $chunk[0] . '</td>
              <td>' . $chunk[1] . '</td>
              <td>' . $chunk[2] . '</td>
    </tr>';
}

您可以在行动here中看到它。