PHP,mysql_fetch_array并将数组分解为多个数组

时间:2014-11-17 17:30:49

标签: php arrays

我有一个像这样的数据库表(QUEUE):

queueId phoneNumber 
1       340 000
1       340 111    1
1       340 222
2       332 000
2       332 111
3       421 000
3       421 111
3       421 222

我使用此查询:

SELECT * FROM queue ORDER BY queueId

和这个PHP代码:

while ($rowQueue = mysql_fetch_array($resultQueryQueue, MYSQL_ASSOC)) {
            $queue[] = array(
                'queueId' => $rowQueue['queueId'],
                'phoneNumber' => $rowQueue['phoneNumber']
      ); 
}

result是一个包含8个数组的数组(beacuse record是8)。

我想得到一个包含数组的数组,因为有很多键。在我的例子中,我想获得3个数组,第一个键1,第二个和第三个键2和键3。

我如何制作PHP?有什么功能可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

我想到了两种方法(当然会有其他几种)。 你可以用mysql查询IF" queryId"是一个外键,你可以获得与特定queryId

相关的所有phoneNumber

SECOND:我猜你会得到一个查询结果就像这样

$arr = array(
          array(
                  'queryid' => 1,
                  'phonenumber'=>350000
               ),
          array(
                  'queryid' => 1,
                  'phonenumber'=>350000
               ),
          array(
                  'queryid' => 2,
                  'phonenumber'=>340001
                ),
          array(
                  'queryid' => 2,
                  'phonenumber'=>340002
               )
     );

您可以按

对此进行排序
$ret = array();
foreach ($arr as $k => $v)
{

      $ret [$v['queryid']][]=$v['phonenumber'];
}
var_dump($ret);
这个数组的

键将是' queryid'并且将具有与该键相关的一系列语音 并考虑从电话号码中删除空间。 让我知道它是否有效。感谢