2012-01-20 4 views
0

У меня есть массив, который содержит следующие данные:массив группы в PHP

Array (
[0] => Array (
     [www.google.com] => www.google.com/a 
    ) 
[1] => Array (
     [www.google.com] => www.google.com/a 
    ) 
[2] => Array (
     [www.test.com] => www.test.com 
    ) 
[5] => Array (
     [www.test.com] => www.test.com/c 
    ) 
) 

Мне нужно Grup все ссылки для конкретного URL, как это:

Array (
[www.google.com] => Array (
     [0] => www.google.com/a 
     [1] => www.google.com/a 
    ) 
[www.test.com] => Array (
     [0] => www.test.com 
     [1] => www.test.com/c 
    ) 
) 

Пожалуйста, любая помощь в этом?

ответ

3

Если мы назовем первый массив $domains.

$groups = array(); 

for ($i = 0; $i <= count($domains); $i++) 
{ 
    foreach ($domains[$i] as $domain => $url) 
    { 
     $groups[$domain][] = $url; 
    } 
} 

print_r($groups); 

Это может работать ...

+2

обратите внимание, что числовые индексы во внешнем массиве не последовательны. Я предлагаю использовать 'foreach' для внешнего цикла. – DerVO

+0

Ах да, хороший момент! –