PHPでの2つのネストされたループを使用したHTMLテーブルの生成

では、2つのネストされたループを使用して テーブルを生成してみましょう:

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

この方法の利点は、テーブルの各セルを 個別に記述する必要がないことです。ただし、このアプローチの 欠点は制御が失われることです。

とはいえ、条件分岐を使用することで 制御を取り戻すことができます。以下のように:

php<?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<?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>';
?>
Задание 1

次の配列が与えられています:

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

これを使用してHTMLテーブルを生成してください。