ARRAY MERGE PHP С СОХРАНЕНИЕМ КЛЮЧЕЙ

Функция array_merge в PHP объединяет несколько массивов в один. Она принимает список массивов в качестве аргументов и возвращает новый массив, в котором содержатся все элементы переданных массивов. Но если ключи массивов являются строками, то при объединении дублирующиеся ключи будут перезаписаны:

$arr1 = array('a' => 1, 'b' => 2);
$arr2 = array('a' => 3, 'c' => 4);
$result = array_merge($arr1, $arr2); // array('a' => 3, 'b' => 2, 'c' => 4)

В результате выполнения кода выше, ключ 'a' будет иметь значение 3, а не 1.

Что же делать, если нужно объединять массивы, сохраняя ключи при этом? Для такой задачи в PHP есть функция array_replace. Она работает практически так же, как и array_merge, но перезаписывает значения ключей в том массиве, ключ которого дублируется в другом массиве. Чтобы сохранить значения ключей, можно применить эту функцию в сочетании с функцией array_reverse:

$arr1 = array('a' => 1, 'b' => 2);
$arr2 = array('a' => 3, 'c' => 4);
$result = array_replace(array_reverse($arr1, true), array_reverse($arr2, true));
$result = array_reverse($result, true); // array('a' => 1, 'b' => 2, 'c' => 4)

Здесь ключи массивов инвертируются функцией array_reverse, а затем на них применяется функция array_replace. Результат также инвертируется обратно.

How to Combine and Merge Arrays in PHP

PHP Arrays - Array Merge

How to Enter PHP Array within MySQL Database

array merge array merge recursive and array combine function website development with php

Learn PHP 8 In Arabic 2022 - #067 - Array Merge, Array Replace, Array Rand, Shuffle

array_merge \u0026 array_combine in php - how to merge two arrays in php - php tutorial - 38

Different ways to merge arrays in PHP

PHP array merge Function

Реклама
Новое
Реклама