[英]add new field and data with php to json encoded object with quotes removed
我将php数组转换为json,然后尝试添加另一个字段和带有引号的数据。 这是生成的json对象
$data_string = json_encode($data);
它输出this。
{"dateDebut":"36000000","dateFin":"45000000","periodeDebut":"1410818400","periodeFin":"1411596000","jours":"Thursday","role":{"idRole":"1"},"zone":{"idzone":"Z1E2"},"tag":{"id":"511651969251"},"typeNotification":{"typeNotif":"Alerte"}}
我试过了
$data_string['message']=1;
并以开头的“ 1”输出错误的对象
1"dateDebut":"36000000","dateFin":"45000000","periodeDebut":"1410818400","periodeFin":"1411596000","jours":"Thursday","role":{"idRole":"1"},"zone":{"idzone":"Z1E2"},"tag":{"id":"511651969251"},"typeNotification":{"typeNotif":"Alerte"}}
甚至用这样的引号添加字段
$data_string['message']="1";
根本不将字段消息添加到生成的对象json中。
您不能将数据添加到json字符串,因为它是字符串。
在对json编码之前添加数据:
$data['message']=1;
$data_string = json_encode($data);
或者,如果原始php对象$data
超出了此范围,则必须解码为php对象,添加数据,然后编码回json:
$data = json_decode($data_string);
$data['message']=1;
$data_string = json_encode($data);
你可以这样做:
$data_array = json_decode($data_string);
$data_array['message'] = 1;
$data_string = json_encode($data_array);
字符串$data_string
应包含值为1的新成员message
;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.