按类别说明组织结果

时间:2011-08-13 02:19:05

标签: php mysql arrays

有人可以解释下面代码中发生了什么吗?我理解它直到$categories[$category][] = $row['agency'];行。

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

2 个答案:

答案 0 :(得分:1)

您从数据库获得的结果可能是:

<强>分类机构

Security     Police
Security     CIA
Security     FBI
Government   Education
Government   Health
Misc         AnotherAgency

$ category = $ row ['Category'];从类别的结果中获取值(即安全,政府,杂项)。

之后添加Categories数组。它是一个数组数组。因此,它为每个类别存储一系列代理商。

array('Security'   => array('Police', 'CIA', 'FBI'),
      'Government' => array('Education', 'Health'),
      'Misc'       => array('AnotherAgency'));

答案 1 :(得分:0)

$row['agency']是一个向量。它被“推”到矢量`$ categories [$ category]'。它相当于

array_push($categories[$category], $row['agency']);