之前用二维array转换json,用
json_encode($param_array);
来处理就可以了。
现在考虑这种嵌套模式:
{
"appid": "1500001105",
"nonce": 32490,
"timestamp": 1458195253,
"signature": "bf13fe77f46a96edba1a0e2b84fce66580b2f50b",
"param": {
"userid": "tomy",
"op":1,
"userlist":[
"peter","hick"
]
}
}
json串里包含json数组。param前面的参数需要计算,param是可以写固定的。想了个粗暴的方法:
$params = array(
'appid'=>'1500001105',
'nonce'=>$nonce,
'timestamp'=>$timestamp,
'signature'=>$signature,
);
$p_json = '{"userid":"ross", "op":2, "userlist":["bonnie"]}';
$params_json = json_encode($params);
$newjson = json_encode(array_merge(json_decode($params_json,true),array('param'=>json_decode($p_json))));
把两个作为array merge起来再encode。(现在看来好像params部分并没有必要先encode和decode一遍,:-)