добавление данных в JSON с PHP - PullRequest
2 голосов
/ 06 октября 2009

Я использовал json_decode для создания объекта json. Пройдя через некоторые элементы, я бы хотел добавить к ним дочерние элементы. Как мне это сделать?

Ответы [ 2 ]

5 голосов
/ 06 октября 2009

В зависимости от того, какие опции вы передали json_decode(), вы можете получить от него либо объект, либо массив, и вы можете добавлять к ним элементы, как и любой другой объект или массив.

Чтобы добавить $key => $element в массив:

$myArray[$key] = $element;

Немного менее очевидно, но вы можете добавить новый открытый член к объекту в PHP следующим образом:

$myObj->$key = $element;

Это добавит переменную-член из содержимого $ key (при условии, что $ key является строкой).

Если вы затем передадите свой массив / объект в json_encode(), вы получите следующий json:

{ 'value_of_key' : 'value_of_element' }
1 голос
/ 06 октября 2009

Я бы использовал json_decode($json,true) с истинным флагом, чтобы он возвращался как ассоциативный массив. Затем вы можете добавлять элементы, используя синтаксис массива.

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