更新现有的JSON

叶夫根尼·雷兹尼克(Evgenij Reznik)

假设我具有以下JSON结构:

{"employees":[
    {"firstName":"John", "lastName":"Doe"},
    {"firstName":"Anna", "lastName":"Smith"},
    {"firstName":"Peter", "lastName":"Jones"}
]}

如何使用PHP更新它并添加另一个属性,例如age?
这是我的预期结果:

{"employees":[
    {"firstName":"John", "lastName":"Doe", "age":"20"},
    {"firstName":"Anna", "lastName":"Smith", "age":"30"},
    {"firstName":"Peter", "lastName":"Jones", "age":"40"}
]}

更新:

这是我的方法:

$json1 = '{"employees":[
    {"firstName":"John", "lastName":"Doe"},
    {"firstName":"Anna", "lastName":"Smith"},
    {"firstName":"Peter", "lastName":"Jones"}
]}';

$json2 = '{"employees":[
    {"age":"20"},
    {"age":"30"},
    {"age":"40"}
]}';

$data1 = json_decode($json1, true);
$data2 = json_decode($json2, true);

$i = 0;
foreach ($data1 as $key => $entry) {
    $data1[$key][$i] += $data2["employees"][$i];
    $i++;
}

$json1 = json_encode($data1);
echo ($json1)

但不幸的是,我只能得到以下结果:

{  
   "employees":[  
      {  
         "firstName":"John",
         "lastName":"Doe",
         "age":"20"
      },
      {  
         "firstName":"Anna",
         "lastName":"Smith"
      },
      {  
         "firstName":"Peter",
         "lastName":"Jones"
      }
   ]
}

因此,它仅将其添加到第一项。

昆汀

您需要遍历数组。目前,您正在遍历对象,因此第一个项目是employees,然后没有更多项目。

foreach ($data1['employees'] as $key => $entry) {
    $data1['employees'][$key] += $data2["employees"][$key];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何更新现有的.plist?

来自分类Dev

更新现有的列数据MySQL

来自分类Dev

如何更新现有的Office插件?

来自分类Dev

可以更新现有的照片标签

来自分类Dev

更新现有的列数据MySQL

来自分类Dev

Django现有的Cookie未更新

来自分类Dev

更新现有的 Yaml 文件

来自分类Dev

从现有的json创建动态json

来自分类Dev

如何使用json数据python更新现有的json文件

来自分类Dev

如何通过JSON发布操作更新现有的Rails模型对象?

来自分类Dev

如何更新现有的断开连接的实体

来自分类Dev

如何使用现有的fork更新我的github库?

来自分类Dev

用更新的版本替换现有的RPubs文档

来自分类Dev

回形针删除更新时现有的附件

来自分类Dev

在现有的android项目中更新db文件

来自分类Dev

SWIFT:更新现有的核心数据对象

来自分类Dev

是否可以更新现有的数据验证帮助文本?

来自分类Dev

更新现有的jax -ws服务方法参数

来自分类Dev

如何通过安装脚本更新现有的cms页面

来自分类Dev

在现有的android项目中更新db文件

来自分类Dev

使用WCF更新现有的asp.net项目

来自分类Dev

回形针删除更新时现有的附件

来自分类Dev

如何使用PowerShell更新现有的AzureRm虚拟网络?

来自分类Dev

Laravel 5更新数据库中现有的

来自分类Dev

如何从现有的JSON文件添加新的JSON

来自分类Dev

如何从现有的JSON文件添加新的JSON

来自分类Dev

使用 AngularJS 或 Javascript 从现有的 json 创建新的 json

来自分类Dev

将 JSON 数组添加到现有的 JSON

来自分类Dev

在现有的json元素中添加新的键值对