快速PHP / MySQL问题:
我正在尝试将MySQL数据库表中的数据显示为HTML表格,并且出于某种原因,我的代码将每个数据的输出加倍。
这是我的代码:
$rowarray = $statement->fetchall();
print "<tr>\n";
foreach ($rowarray as $row) {
foreach ($row as $col) {
print "\t<td>$col</td>\n";
}
print "</tr>\n";
}
我的结果与此类似:
用户ID |用户名|名字|姓氏
1 1用户名用户名名字名字姓氏姓名
等等你明白了。为什么会这样?顺便说一句,如果我通过引用row []下标0-3来手动添加列信息,那么一切都会正确显示;只有在我使用嵌套的foreach语句时才会复制数据。
答案 0 :(得分:3)
您从PDO fetchall返回数字和名称索引值。要获得数字索引:
$rowarray = $statement->fetchall(PDO::FETCH_NUM);