我正在尝试使用 PHP/HTML 打印表格。存储在数组中的数据如下:
Array ( [id] => 1 [first_name] => mike [last_name] => lastname )
我的代码如下。它运行并且没有错误,但是输出不如预期。这是 PHP/HTML 代码:
<table>
<tr>
<th>1</th>
<th>2</th>
<th>3</th>
</tr>
<?php foreach ($res as $item): ?>
<tr>
<td><?php echo $item['id'] ?></td>
<td><?php echo $item['first_name'] ?></td>
<td><?php echo $item['last_name'] ?></td>
</tr>
<?php endforeach; ?>
</table>
我得到的结果是项目的第一个字符:
1 2 3
1 1 1
m m m
l l l
不知道我做错了什么?我真的很感激解释。
更新:
没有错误的 PHP 代码:
<?php
foreach ($result as $row)
{
echo '<tr>';
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['first_name'] . '</td>';
echo '<td>' . $row['last_name'] . '</td>';
echo '</tr>';
}
?>
这是我的数组,其中只有一个“行”:
使用 <PRE> 标签包裹的 print_r($result) 输出 $result 变量
Array
(
[id] => 3
[first_name] => Jim
[last_name] => Dude
)
这是我得到的结果:
实际表结果:
ID First Name Last Name
3 3 3
J J J
D D D
但是,如果我在数组中有 0 或超过 1(意味着 2 或更多),它就可以完美地工作。当我在数组中只有一个“行”元素时,它就不起作用了。例如这个数组,完美地工作:
Array
(
[0] => Array
(
[id] => 3
[first_name] => Jim
[last_name] => Dude
)
[1] => Array
(
[id] => 4
[first_name] => John
[last_name] => Dude2
)
)
我得到这个结果:
ID First Name Last Name
3 Jim Dude
4 John Dude2
我不确定我做错了什么。这个想法是不知道表中有多少项目将其读入$result
变量,然后使用此变量打印 HTML 表中的所有元素。表可以包含 O 个元素、1 行元素、1 行或更多行元素。