将对象添加到现有变量中

时间:2019-06-16 22:33:45

标签: php arrays json object variables

我有一个小问题,我处在这种情况下:我有一个json,我解析该对象时json_decode没问题,在此数组中我有各种值,特别是我有一个名为“ message”的数组那么我想为此$jsonObj->message添加值:

$jsonObj->message->hello = 'example';

现在我想在不删除其他值的情况下向$jsonObj->message添加另一个对象,我想要的是:

$jsonObj->message->hello; // this is auto generated from the json


$jsonObj->message ADD $json2;

所以我也应该有$jsonObj->message->somethingIntoJson2$jsonObj->message->hello

谢谢。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您可以将json_decodetrue用作第二个参数,以将其转换为数组,然后可以分配新索引及其值,然后使用json_encode

$jsonArr = [
'mesage' => [
    'hello' => 'example'
 ]
];
$j   = json_encode($jsonArr);
echo $j;//{"mesage":{"hello":"example"}}
$obj = json_decode($j,true);
$obj['mesage']['element'] = 'value';
echo json_encode($obj);//{"mesage":{"hello":"example","element":"value"}}