Рекурсивное слияние php

мне нужно объединить несколько массивов другим способом, и я использую array_merge_recursive. Однако есть кое-что, что мне нужно изменить, и я не знаю как. Вот цитата из php.net

. Если, однако, массивы имеют одинаковый числовой ключ, более позднее значение не будет перезаписывать исходное значение, но будет добавлено.

Я хочу, чтобы это значение НЕ добавлялось, я не хочу добавлять точные значения в новый массив. Надеюсь, вы это поняли.

Пример:

$array = array(
   'some'  => array(
       'other'    => 'key',
   ),
);

$array2 = array();
$array2['some']['other'] = 'key2';

Если я использую array_merge_recursive Это приведет к следующему:

Array (
    [some] => Array
        (
            [other] => Array
                (
                    [0] => key
                    [1] => key2
                )
        ) )

Я хочу, чтобы он соответствовал тому же результату, а не добавлять его. Да, я знаю, вы бы сказали, тогда используйте array_merge, но это тоже не работает. Если я использую это:

$array = array(
   'some'  => array(
       'other'    => 'key',
   ),
);

$array2 = array();
$array2['some']['other2'] = 'key2';

print_r(array_merge($array, $array2));

Он удалит $ array [some] [other] из списка и оставит только $ array [some] [other2]. Я не знаю, что лучше, поскольку никто не делает его лучше.

7
задан Alex Emilov 7 August 2011 в 20:44
поделиться