在 html 表格中显示一个数组
Posted
技术标签:
【中文标题】在 html 表格中显示一个数组【英文标题】:Display an array in html table 【发布时间】:2011-02-15 23:42:38 【问题描述】:我有这个数组:
Array
(
[page] => Array
(
[0] => add
[1] => edit
[2] => delete
[3] => search
)
[category] => Array
(
[0] => add
[1] => edit
[2] => export
)
)
我希望它显示为这样的 html 表格:
Page - Category
add - add
edit - edit
delete - export
search
search
我尝试了很多方法,但都没有奏效,有什么解决方案吗?
【问题讨论】:
这是使用 php 吗?您可能希望这样标记问题。 能否请您发布您尝试的内容,以便我们找出问题所在?谢谢! 【参考方案1】:这假设页面多于类别,并且它们保存在 $Array['pages'] 和 $Array['categories'] 变量中:
print '<table><tr><td>Page</td><td>Category</td></tr>';
for ($i=0; $i< sizeof($Array['pages']; $i++)
print '<tr><td>';
print $Array['pages'][$i];
print '</td><td>';
if ($i < sizeof($Array['categories']))
print $Array['categories'][$i];
print '</td></tr>';
print '</table>';
还有更优雅的方法,但这应该可行。
【讨论】:
【参考方案2】:假设这是 PHP 并且对齐只是基于数组的索引:
<?php
$var['page'] = array('add', 'edit', 'delete', 'search');
$var['category'] = array('add', 'edit', 'export');
$pages = count($var['page']);
$categories = count($var['categories']);
$max = ($pages > $categories ? $pages : $categories);
echo '<table>';
for ($i = 0; $i < $max; $i++)
echo '<tr>';
echo "<td>$var['page'][$i]</td>";
echo "<td>$var['category'][$i]</td>";
echo '</tr>';
echo '</table>';
?>
【讨论】:
我没有为你的列输出标题,但你可以在循环之前这样做。【参考方案3】:对不起,我没有标记为 PHP...这是我上次尝试的代码
echo "<table>";
for($i=0;$i<count($array);$i++)
echo "<tr>";
foreach($array as $key=>$value)
echo "<td>".$array[$key][$i]."</td>";
echo "</tr>";
echo "</table>";
但无论如何,JYelton 的回答效果很好,谢谢 =D
【讨论】:
【参考方案4】:我有从作为数组的数据库中获取结果的经验。我创建了一个类作为多行统一结果集的容器。只需使用 getter 获取属性,或者如果公开则直接访问它。
【讨论】:
以上是关于在 html 表格中显示一个数组的主要内容,如果未能解决你的问题,请参考以下文章