Generování HTML tabulky pomocí dvou vnořených cyklů v PHP
Pojďme vytvořit naši tabulku pomocí dvou vnořených cyklů:
<?php
echo '<table>';
foreach ($arr as $row) {
echo '<tr>';
foreach ($row as $cell) {
echo "<td>$cell</td>";
}
echo '</tr>';
}
echo '</table>';
?>
Tento způsob je výhodný tím, že není nutné zapisovat každou buňku tabulky zvlášť. Nevýhodou takového přístupu je však ztráta kontroly.
Nicméně, kontrolu lze vrátit pomocí podmínek, například takto:
<?php
echo '<table>';
foreach ($arr as $row) {
echo '<tr>';
foreach ($row as $key => $cell) {
if ($key === 'salary') {
echo "<td>$cell dollars</td>";
} else {
echo "<td>$cell</td>";
}
}
echo '</tr>';
}
echo '</table>';
?>
Náš kód můžeme zjednodušit následujícím způsobem:
<?php
echo '<table>';
foreach ($arr as $row) {
echo '<tr>';
foreach ($row as $key => $cell) {
if ($key === 'salary') {
$cell .= ' dollars';
}
echo "<td>$cell</td>";
}
echo '</tr>';
}
echo '</table>';
?>
Je dáno následující pole:
<?php
$products = [
[
'name' => 'product1',
'price' => 100,
'amount' => 5,
],
[
'name' => 'product2',
'price' => 200,
'amount' => 6,
],
[
'name' => 'product3',
'price' => 300,
'amount' => 7,
],
];
?>
Vytvořte z něj HTML tabulku.