Значения группы PHP из массива - PullRequest
0 голосов
/ 28 сентября 2018

У меня есть этот массив:

Array ( 
    [061716v] => 1 
    [061610A] => 1 
    [062433AP] => 1 
    [063868M] => 2 
    [059173V] => 3 
    [061579A] => 3 
    [062404AP] => 3 
    [059179V] => 4 
    [061582A] => 4 
    [061697V] => 4 
    [062407AP] => 4 
)

Как я могу получить это:

Array ( 
    [1] => 061716v,061610A,062433AP 
    [2] => 063868M 
    [3] => 059173V,061579A,062404AP 
    [4] => 059179V,061582A,061697V,062407AP 
)

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018
// You also can use implode to skip isset checks
$group = [];

foreach ($initialArray as $key => $value) {
    $group[$value][] = $key;
}

$result = array_map(function($v) { return implode(",",$v); }, $group);

print_r($result);
0 голосов
/ 28 сентября 2018

В PHP сингл foreach() сделает работу: -

$final_array = [];

foreach($initial_array as $key=>$val){

    $final_array[$val] = isset($final_array[$val]) ? $final_array[$val].','.$key : $key;

}

print_r($final_array);

Вывод: - https://3v4l.org/lSKE2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...