我正在尝试将PHP多维数组转换为HTML表格。
问题是我想用rowspan
和colspan
组织表格以反映数组结构。我知道它有效但我不想在另一个表中使用表。
下面是一个数组示例和预期结果。
修改:
以下是我当前的结果(没有rowspan
和colspan
)
我尝试使用rownspan导致完全混乱。 Rhe table完全失去了结构。
EDIT2:
下面还有我的来源和实际结果。
Array
(
[0] => ID
[1] => Array
(
[test2_id] => Array
(
[0] => ID
[1] => name
[2] => data
[3] => Array
(
[test3_id] => Array
(
[0] => ID
[1] => name
[2] => info
[3] => data
)
)
[4] => info
)
)
[2] => name
[3] => Array
(
[test4_id] => Array
(
[0] => ID
[1] => name
[2] => info
[3] => data
)
)
[4] => data
[5] => info
)
Expected result
Current Result
PHP:
echo '<table border= 1>';
$this->iterate($array, 4);
echo '</table>';
function iterate($array, $level)
{
echo '<tr>';
foreach ($array as $key=>$row)
{
if (is_array($row) )
{
echo '<th rowspan="1" colspan="'.count($row, COUNT_RECURSIVE).'">';
echo key($row);
echo '</th>';
}
else
{
echo '<th rowspan="'.$level.'" >'.$row.'</th>';
}
}
echo '</tr>';
foreach ($array as $key=>$row)
{
if (is_array($row) )
{
$this->iterate($row, $level -1);
}
}
}
我遇到的一个问题是COUNT_RECURSIVE命令包含键和值。我必须进行手动迭代以获得正确的计数(对于colspan)
结果图像下方:
php reult