Объединить два объекта Json PHP (не одинаковая структура)

php #json #laravel #array-merge

#php #json #laravel #массив-слияние

Вопрос:

Привет, у меня есть два объекта json

Json 1

 {
  "id": null,
  "type": "NE",
  "info": {
    "name": "Ne",
    "last_name: "NE",
    "status": "NE",
    "rfc": "NE",
    "email": "jNE"
   }
  }
 

json 2

   {
  "id": 2,
  "type": "PF",
  "info": {
    "status": 1,
    "rfc": "DOSLWOOEOE22",
    "email": "email@email.com"
   }
  }
 

Мне нужно объединить объекты json, когда json 2 переопределяет значения в json 1, но результат json содержит ключи / значения, которых нет в json

мне нужен результат json, такой же, как этот:

  {
  "id": 2,
  "type": "PF",
  "info": {
    "name": "Ne",
    "last_name: "NE",
    "status": 1,
    "rfc": "DOSLWOOEOE22",
    "email": "email@email.com"
   }
  }
 

** примечание: я пытаюсь использовать array_merge, но не работает, только переопределить json 2 в json 1 без других ключей **

Комментарии:

1. array_merge_recursive Работает ли лучше?

2. работает с array_replace_recursive, спасибо

Ответ №1:

Работа с array_replace_recursive

 array_replace_recursive(json_1, json_2)