php - 如何在 php 中添加具有新值的新键以存在数组?
问题描述
我正在尝试使用键添加值以存在数组
这是我的数组
{
"object": {
"USER_ID": "1",
"EMAIL": "abdabughazaleh@hotmail.com",
"FIRST_NAME": "abd",
"LAST_NAME": "abughazaleh",
"PICTURE": "images/users/xuhEzR6m4LvjCuKx1vAb.jpg"
}
}
带有 json 结果。
我需要添加这样的元素:
{
"object": {
"USER_ID": "1",
"EMAIL": "abdabughazaleh@hotmail.com",
"FIRST_NAME": "abd",
"LAST_NAME": "abughazaleh",
"PICTURE": "images/users/xuhEzR6m4LvjCuKx1vAb.jpg",
"new_key": "new_value"
}
}
当我尝试这个时:
array_push($ar['object'],array('new_key'=>'new_value'));
还有这个 :
$ar['object']['new_key'] = 'new_value';
问题没有为我解决:(
解决方案
这不是一个数组,这是json:
{
"object": {
"USER_ID": "1",
"EMAIL": "abdabughazaleh@hotmail.com",
"FIRST_NAME": "abd",
"LAST_NAME": "abughazaleh",
"PICTURE": "images/users/xuhEzR6m4LvjCuKx1vAb.jpg"
}
}
首先,将 json 转换为关联数组json_decode
:
$json = '{
"object": {
"USER_ID": "1",
"EMAIL": "abdabughazaleh@hotmail.com",
"FIRST_NAME": "abd",
"LAST_NAME": "abughazaleh",
"PICTURE": "images/users/xuhEzR6m4LvjCuKx1vAb.jpg"
}
}';
$json = json_decode($json, true); //true second parameter is actully for converting json into associative array
比向新创建的数组添加一个值:
$json['object']['key'] = 'value';
结果print_r($json)
:
Array
(
[object] => Array
(
[USER_ID] => 1
[EMAIL] => abdabughazaleh@hotmail.com
[FIRST_NAME] => abd
[LAST_NAME] => abughazaleh
[PICTURE] => images/users/xuhEzR6m4LvjCuKx1vAb.jpg
[key] => value
)
)
比转换回json:
$json = json_encode($json);
结果echo $json;
:
{
"object":{
"USER_ID":"1",
"EMAIL":"abdabughazaleh@hotmail.com",
"FIRST_NAME":"abd",
"LAST_NAME":"abughazaleh",
"PICTURE":"images\/users\/xuhEzR6m4LvjCuKx1vAb.jpg",
"key":"value"
}
}
推荐阅读
- javascript - 如何将PHP中的输入字段值存储到数据库中,然后将其分配给javascript中的变量
- java - 参数化数组 - 直接访问与设置器
- python - 函数返回两个值,将一个值存储在变量中,将另一个值添加到变量中
- angular - Angular 6如何在菜单项或超链接单击上显示微调器
- android - NativeScript:在没有多平台插件的情况下使用平台特定的本机库?
- azure - Logic App Custom Connector SOAP to Rest 问题
- javascript - 该函数应该是可调用的
- javascript - 其值来自 API 调用的计算属性
- php - 在 laravel 中验证数组需要密钥存在。删除密钥和验证通过
- highcharts - Highcharts - 使用具有 x 值日期和时间的图表的性能问题