从查询创建多维数组

时间:2011-08-15 18:09:15

标签: php mysql arrays

我正在使用下面的代码从查询中创建一个多维数组,以便我可以按类别组织结果,但它只能获得2列(类别,代理)。

我不知道如何改变这一点,以便我可以获得4列(类别,代理,描述,网站)。非常感谢任何帮助。

$categories = array();
while ($row = mysqli_fetch_array($result))
{
    $category = $row['category'];
    $categories[$category][] = $row['agency'];
}

<?php
    foreach ($categories as $category => $agencies)
    {
?>
    <h3><?php echo $category; ?></h3>
    <table class="chart">
<?php
    foreach ($agencies as $agency)
    {
?>
        <tr><td><?php echo $agency; ?></td></tr>
<?php
    }
?>
    </table>
<?php
    }
?>

1 个答案:

答案 0 :(得分:4)

您可以将各个行结果存储为关联数组:

$categories[$category][] = array(
      'agency' => $row['agency'], 
      'description' => $row['description'], 
      'website' => $row['website']
  );