[英]php: output Array in html table
如何将所有值写入HTML表中?
这是数组:
Array
(
[data] => Array
(
[0] => Array
(
[0] =>
[1] => sortprice
[2] => sortdate
)
[1] => Array
(
[0] => a lorem ipsum
[1] => 1. Preis
[2] => 1998
)
[2] => Array
(
[0] => b lorem ipsum
[1] => 2. Preis
[2] => 1997
)
[3] => Array
(
[0] => c lorem ipsum
[1] => 3. Preis
[2] => 1996
)
)
)
我只能输出所有值。 像这样:
foreach ($table['data'] as $v1) {
foreach ($v1 as $v2) {
echo "$v2\n";
}
}
如何使用foreach访问$表$'[data'] [1] ..的值? 要将它们写入表单元格,如下所示:
<table> <tr> <td>a lorem ipsum</td> <td>1. Preis</td> <td>1998</td> </tr> ..... </table>
您的foreach循环如下所示:
echo "<table border='1'>";
foreach ($table['data'] as $v1) { //loop for ROW
echo "<tr>";
foreach ($v1 as $v2) { //loop for CELL
echo "<td>$v2</td>";
}
echo "</tr>";
}
echo "</table>";
当您在数据中嵌入了列标题时,我将首先打印表标题,然后循环遍历其余数据。
<?php
$table = [
'data' => [
[
'Column 1',
'Column 2',
'Column 3'
],
[
'foo',
'bar',
'baz'
],
[
'big',
'fat',
'mamma'
]
]
];
$data = $table['data'];
?>
<table>
<thead>
<tr>
<th><?= $data[0][0] ?></th>
<th><?= $data[0][1] ?></th>
<th><?= $data[0][2] ?></th>
</tr>
</thead>
<tbody>
<?php
array_shift($data);
foreach($data as $value)
{
?>
<tr>
<td><?= $value[0] ?></td>
<td><?= $value[1] ?></td>
<td><?= $value[2] ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
输出:
<table>
<thead>
<tr>
<th>Column 1</th>
<th>Column 2</th>
<th>Column 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>foo</td>
<td>bar</td>
<td>baz</td>
</tr>
<tr>
<td>big</td>
<td>fat</td>
<td>mamma</td>
</tr>
</tbody>
</table>
<table>
<tr><td>ID</td><td colspan="2"><?php echo $table['id']?></td></tr>
<tr><td>Name</td><td colspan="2"><?php echo $table['nmae']?></td></tr>
<tr><td>Description</td><td colspan="2"><?php echo $table['description']?></td></tr>
<tr><td>Author</td><td colspan="2"><?php echo $table['author']?></td></tr>
<tr><td>Last Modified</td><td colspan="2"><?php echo $table['last_modified']?></td></tr>
<?php foreach($table['data'] as $v1){ ?>
<tr><td><?php echo $v1[0];?></td><td><?php echo $v1[1];?></td><td><?php echo $v1[2];?></td></tr>
<?php } ?>
</table>
你可以试试看
<?php
if(!empty($table['data'])){
echo "<table><body>";
foreach($table['data'] as $data){
echo "<tr>";
echo "<td>".$data[0]."</td>";
echo "<td>".$data[1]."</td>";
echo "<td>".$data[2]."</td>";
echo "</tr>";
}
echo "</body></table>";
}
?>
试试这个代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.