2017-01-06 2 views
1

У меня есть массив, как показано ниже в PHP (Codeigniter). Я хочу сгруппировать их, используя названия стран. Поэтому значение ключа страны станет ключом внешнего массиваНазначение значения из массива как ключа и записи слияния одного и того же ключа

Array 
(
    [0] => Array 
     (
      [city] => Buenos Aires 
      [country] => Argentina 
     ) 

    [1] => Array 
     (
      [city] => Adelaide 
      [country] => Australia 
     ) 

    [2] => Array 
     (
      [city] => Brisbane 
      [country] => Australia 
     ) 

    [3] => Array 
     (
      [city] => Fremantle 
      [country] => Australia 
     ) 

    [4] => Array 
     (
      [city] => Melbourne 
      [country] => Australia 
     ) 

    [5] => Array 
     (
      [city] => Sydney 
      [country] => Australia 
     ) 

) 

Я хочу, чтобы преобразовать его в массив как ниже, так страна станет ключом со списком города, как в стране, имя

Array 
(
    [Argentina] => Array 
    (
     [0] => Buenos Aires 
    ) 

    [Australia] => Array 
    (
     [0] => Adelaide 
     [1] => Brisbane 
     [2] => Melbourne 
     [3] => Sydney 
    ) 

) 
+1

Показать код первого. –

+0

@u_mulder .. Я пробовал много вещей для цикла, но не работал должным образом – hrishi

ответ

1

Вот код ,

$arr = [//your arr]; 

$result = []; // will be your output 

foreach($arr as $k => $v){ 
    $result[$v['country']][] = $v['city']; 
} 

Я надеюсь, что это будет работать

+0

Спасибо. Он работает так, как я хочу. – hrishi

+0

Добро пожаловать! Если это решение решит вашу проблему, примите мой ответ. – rahulsm