Объединение данных ассоциативной строки в двумерный массив на основе значения столбцаPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Объединение данных ассоциативной строки в двумерный массив на основе значения столбца

Сообщение Anonymous »

Мне нужно объединить данные строк моего двухмерного массива, где строки имеют одно и то же значение messageID.
$myarray = [
[
'messageId' => '5ACE9D8841',
'sender' => '[email protected]'
],
[
'messageId' => '7EE67D8170',
'sender' => '[email protected]'
],
[
'messageId' => '8095FD8836',
'sender' => '[email protected]'
],
[
'messageId' => '7EE67D8170',
'dest' => '[email protected]',
'status' => 'sent',
'date' => '2021-02-01 11:06:55'
]
];

Из примера данных строки [1] и [3] объединяются в [1], поскольку они имеют один и тот же [messageId]. Ожидаемый результат:
Array
(
[0] => Array
(
[messageId] => 5ACE9D8841
[sender] => [email protected]
)

[1] => Array
(
[messageId] => 7EE67D8170
[dest] => [email protected]
[status] => sent
[date] => 2021-02-01 11:06:55
[sender] => [email protected]
)

[2] => Array
(
[messageId] => 8095FD8836
[sender] => [email protected]
)
)


Я не возражаю против индекса ключа или порядка.
EDIT: я пробовал array_merge, array_merge_recursive и многие другие. Наилучший результат был получен при использовании
$result_arr = array();
foreach ($myarray as $sub_arr) {
$result_arr = array_merge($result_arr, $sub_arr);
$result_arr = array_unique($result_arr);
}

Он работает, но возвращает только последнюю итерацию:
Array (
[messageId] => 7EE67D8170
[dest] => [email protected]
[status] => sent
[date] => 2021-02-01 11:06:55
[sender] => [email protected]
)


Подробнее здесь: https://stackoverflow.com/questions/660 ... lumn-value
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»