Как можно избежать, чтобы array_merge_recursive () преобразовывал свойства в массивы? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь array_merge_recursive два массива.

  $arrayA = array(
    'properties' => array(
      'path' => array(
        'default' => '',
      ),
      'multiple' => array(
        'default' => true,
      ),
    )
  );

  $arrayB = array(
    'properties' => array(
      'path' => array(
        'default' => 'foo',
      ),
      'multiple' => array(
        'default' => false,
      ),
    )
  );

  $array = array_merge_recursive($arrayA,$arrayB);
  print_r($array);

Что дает

Array (
  [properties] => Array (
    [path] => Array (
      [default] => Array (
        [0] => 
        [1] => foo 
        ) 
      ) 
    [multiple] => Array ( 
      [default] => Array ( 
        [0] => 1 
        [1] => 
      ) 
    ) 
  ) 
)

Как видите, по умолчанию и несколько свойств объединяются в массивы, поскольку они существуют в обоих массивах.

Но я не хочу, чтобы они преобразовывались в массивы, я хочу, чтобы последнее значение переопределяло предыдущее один.

И, конечно, они существуют в обоих массивах, я не могу объявить это только во втором.

Как мне этого добиться?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...