データベースからいくつかのデータを取得しています (query と呼ばれる関数を使用)。各結果に別のキーと値のペアを追加します。つまり、次のようになります。
$items = query("SELECT * FROM items");
foreach($items as &$item) {
$item['fixedname'] = str_replace(' ','_',$item['name']);
}
今、これらをhtmlビューに配置したいと思います。
<?php foreach($items as $item): ?>
<div id="<?= $item['fixedname'] ?>" ><?= $item['name'] ?></div>
<?php endforeach; ?>
ただし、これは正しく出力されません。たとえば、クエリが 2 つのアイテムを返す場合、php のループは同じものを 2 回出力します。3 つある場合: 最初の 1 つを出力し、次に 2 つ目の 2 つを出力します。ここで何が問題なのですか?