@balex777

Как слить массив с одинм одинаковым id?

Привет, вот есть массив
array(5) {
  [0]=>
  array(2) {
    ["boardItemId"]=>
    string(6) "122379"
    ["id"]=>
    string(8) "15961384"
  }
  [1]=>
  array(2) {
    ["boardItemId"]=>
    string(6) "122379"
    ["id"]=>
    string(8) "16035092"
  }
  [2]=>
  array(2) {
    ["boardItemId"]=>
    string(6) "122379"
    ["id"]=>
    string(8) "16132749"
  }
  [3]=>
  array(2) {
    ["boardItemId"]=>
    string(6) "122379"
    ["id"]=>
    string(8) "16136476"
  }
  [4]=>
  array(2) {
    ["boardItemId"]=>
    string(6) "122379"
    ["id"]=>
    string(8) "15546817"
  }
}


У них у всех boardItemId одинаковый а id разные
как сделать из того что выше, как сделать вот такой массив?

[122379]=>
  array(2) {
    [0]=>
    string(6) "15961384"
    [1]=>
    string(8) "16035092"
    [2]=>
    string(8) "16132749"
    [3]=>
    string(8) "16136476"
    [4]=>
    string(8) "15546817"
  }


То есть колючем массива сделать boardItemId а адишники стали элементами массива
  • Вопрос задан
  • 53 просмотра
Решения вопроса 1
@balex777 Автор вопроса
Спасибо вопрос закрыт, сам сделал
$itemIds = [];
        foreach ($result1 as $item) {
            if (array_key_exists($item['boardItemId'], $itemIds)) {
                $itemIds[$item['boardItemId']][] = $item['id'];
                continue;
            }
            $itemIds[$item['boardItemId']][] = $item['id'];

        }
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
flapflapjack
@flapflapjack
на треть я прав
$array=array(
array("boardItemId"=>122379,"id"=>15961384),
array("boardItemId"=>122379,"id"=>16035092),
array("boardItemId"=>122379,"id"=>16132749)
);

foreach($array as $index=>$arr){
$newarr[$arr[boardItemId]][]=$arr['id'];
}

var_dump($newarr);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы