微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 关联数组的数组,向关联数组添加新元素

如果我有这样的数组:

array(2) {
  [0]=>
  array(2) {
    ["id"]=>
    string(2) "34"
    ["total"]=>
    string(6) "122337"
  },
[1]=>
  array(2) {
    ["id"]=>
    string(2) "43"
    ["total"]=>
    string(6) "232337"
  }
}

我想为每个子数组添加一个新的键值,例如,它会像这样结束:

array(2) {
      [0]=>
      array(2) {
        ["id"]=>
        string(2) "34"
        ["total"]=>
        string(6) "122337"
        ["newkey"]=>
        string(6) "hihihi"
      },
    [1]=>
      array(2) {
        ["id"]=>
        string(2) "43"
        ["total"]=>
        string(6) "232337"
       ["newkey"]=>
        string(6) "hihihi"
      }
    }

我该怎么办?

我试过像这样的foreach:

foreach($exterior_array as $inside_array) {
 $inside_array['newkey'] = "hihihi";
}

但是一旦进入foreach,值就不会被保存.

解决方法:

foreach($exterior_array as $inside_array) {
    $inside_array['newkey'] = "hihihi";
}

But once I get inside the foreach, the values are not saved.

那是因为你正在通过$inside_array处理数组的副本.您可以通过使$inside_array成为原始值的别名来访问要更改的“orignal”值;使用参考:

foreach($exterior_array as &$inside_array) {
                           ^- set the reference
    $inside_array['newkey'] = "hihihi";
}
unset($inside_array);
^^^^^^^^^^^^^^^^^^^^^- remove the reference

http://php.net/foreach比较

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐