2014-10-01 72 views
0

我在解决这个问题时遇到了问题。我有一组这样的MySQL查询返回的数据:将MySQL查询转换为多维数组

url |用户
https://www.facebook.com/ |帕特里克
https://www.google.com/ |帕特里克
https://www.reddit.com/ | bob
https://www.bing.com/ | bob
https://www.yahoo.com/ | bertha

其中'|'是字段分隔符。

我需要用PHP来形成多维数组,看起来像这样来解析这些数据:

patrick 
    https://www.facebook.com/ 
    https://www.google.com/ 
bob 
    https://www.reddit.com/ 
    https://www.bing.com/ 
bertha 
    https://www.yahoo.com/ 

任何援助将不胜感激。

+0

这是实际的数据库内容,还是你有单独的URL和名称字段?你试图制作一个关联数组是什么?它看起来如何? – mario 2014-10-01 21:42:03

回答

0

假设你知道如何使用PHP从数据库中获取结果,我会采用类似的方式;

while($row = $result->fetch_assoc()) { 
    $array[$row['users']][] = $row['url']; 
} 

你将得到与该用户作为第一密钥的阵列和数字作为第二,与所述URL作为值,如下所示;

Array (
    patrick => Array (
       [0] => https://www.facebook.com/ 
       [1] => https://www.google.com/ 
    ) 
    bob => Array (
       [0] => https://www.reddit.com/ 
       [1] => https://www.bing.com/ 
    ) 
    bertha => Array (
       [0] => https://www.yahoo.com/ 
    ) 
) 

注:我在这里使用了面向对象的风格mysqli的功能。如果您仍在使用mysql_函数,请尽快迁移到MySQLi或PDO。

希望这会有所帮助。