当我尝试创建HTML表时,我的表格混乱了。这是我的代码。
$data['items'] = array(
array(
'des' => 'item #1',
'price' => 10,
'o' => 2,
't' => 15,
),
array(
'des' => 'item #3',
'price' => 11,
'o' => 4,
't' => 10,
),
);
这是我继续创建表格。但这似乎完全错了。特别是在tr和td中检查foreach中的条件......
<table><thead align="left" style="display: table-header-group"><tr><th>
<table><tr> <td>col 1 </td>
<td>col 2 </td>
<td>col 3 </td>
<td>col 4 </td>
<td>col 5 </td>
</tr></table>
</th></tr></thead>
<tbody>
<?php foreach ($data['items'] as $rows) :?>
<tr class="item_row">
<?php
$total = 0;
foreach ($rows as $key => $value) : ?>
<td><?php echo $key+1 ?></td>
<td> <?php echo $value['description'] ?></td>
<td> <?php echo $value['price'] ?></td>
<td> <?php echo $value['o'] ?></td>
<td> <?php echo $value['t'] ?></td>
<?php endforeach;?>
</tr>
<?php endforeach;?>
</tbody>
</table>
我面临的问题首先是条件不正确,所以在每一行它只是每次都引用第一个值。 其次,桌子明显破了。 需要一些帮助来解决这个问题。
答案 0 :(得分:2)
你有一个循环太多,内部循环不是必需的,并导致警告,因为$value
不是一个数组。
除此之外,你已经弄乱了你的桌面,添加了另一张桌子和th
标签,而这些标签并不是必需的。
您需要以下内容:
<table>
<thead align="left" style="display: table-header-group">
<tr>
<th>col 1 </th>
<th>col 2 </th>
<th>col 3 </th>
<th>col 4 </th>
<th>col 5 </th>
</tr>
</thead>
<tbody>
<?php
$total = 0;
foreach ($data['items'] as $rows) :?>
<tr class="item_row">
<td><?php echo ++$total; ?></td>
<td> <?php echo $rows['description']; ?></td>
<td> <?php echo $rows['price']; ?></td>
<td> <?php echo $rows['o']; ?></td>
<td> <?php echo $rows['t']; ?></td>
</tr>
</tbody>
</table>
<?php endforeach;?>