Задать вопрос
@XenK

Объединить два массива по ключам?

Есть первый массив:
Array
(
    [0] => Array
        (
            [date1] => 15.08.2016
            [money] => 1050
        )

    [1] => Array
        (
            [date1] => 11.08.2016
            [money] => 5000
        )

    [2] => Array
        (
            [date1] => 10.08.2016
            [money] => 600
        )

И есть второй:
Array
(
    [0] => Array
        (
            [date1] => 15.08.2016
            [money] => 0
        )

    [1] => Array
        (
            [date1] => 14.08.2016
            [money] => 0
        )

    [2] => Array
        (
            [date1] => 13.08.2016
            [money] => 0
        )

Как мне объединить эти два массива по ключам, если date1 совпадает date1?
Что должно получиться:
Array
(
    [0] => Array
        (
            [date1] => 15.08.2016
            [money] => 1050
        )

    [1] => Array
        (
            [date1] => 14.08.2016
            [money] => 0
        )

    [2] => Array
        (
            [date1] => 13.08.2016
            [money] => 0
        )

    [3] => Array
        (
            [date1] => 12.08.2016
            [money] => 0
        )

    [4] => Array
        (
            [date1] => 11.08.2016
            [money] => 5000
        )

    [5] => Array
        (
            [date1] => 10.08.2016
            [money] => 600
        )
  • Вопрос задан
  • 245 просмотров
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 2
nazarpc
@nazarpc
Open Source enthusiast
$merged_normalized =
    array_column($arr1, 'money', 'date1') +
    array_column($arr2, 'money', 'date1');
$result = [];
foreach ($merged_normalized as $date => $money) {
    $result[] = [
        'date'                  => $date,
        'money_products_client' => $money
    ];
}
unset($merged_normalized, $date, $money);
Ответ написан
toxa82
@toxa82
array_merge()
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы