将数组显示为表格

新手上路,请多包涵

我正在尝试使用 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 行或多行元素。

原文由 user1930845 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 443
1 个回答

不要删除您的 foreach 循环。在没有看到构建数组的代码的情况下,我猜你正在这样做:

 $res = array('id' => 1, 'first_name'=>'mike', 'last_name'=>'lastname');

实际上你可能想做的是:

 $res[] = array('id' => 1, 'first_name'=>'mike', 'last_name'=>'lastname');

方括号 [ ] 将所有值的数组添加到数组中。通过这种方式,您可以将每个作为值的集合而不是单个值进行循环。

原文由 David Stetler 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题