Генерация HTML таблицы с помощью двух вложенных циклов в PHP

Давайте сформируем нашу таблицу с помощью двух вложенных циклов:

<?php echo '<table>'; foreach ($arr as $row) { echo '<tr>'; foreach ($row as $cell) { echo "<td>$cell</td>"; } echo '</tr>'; } echo '</table>'; ?>

Такой способ удобен тем, что не нужно прописывать каждую ячейку таблицы отдельно. Однако, недостатком такого подхода становится потеря контроля.

Впрочем, контроль можно вернуть с помощью условий, вот так:

<?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>'; ?>

Можно упросить наш код следующим образом:

<?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>'; ?>

Дан следующий массив:

<?php $products = [ [ 'name' => 'product1', 'price' => 100, 'amount' => 5, ], [ 'name' => 'product2', 'price' => 200, 'amount' => 6, ], [ 'name' => 'product3', 'price' => 300, 'amount' => 7, ], ]; ?>

Сформируйте с его помощью HTML таблицу.



Чат с GPT Компилятор