简体   繁体   English

在多维数组的每个数组元素中添加键值对

[英]Add key-value pair in every array element in multidimension array

Is it possible without using foreach to add key-value to the every array element? 是否可以不使用foreach向每个数组元素添加键值? I need to add at the end of all arrays type => image . 我需要在所有数组的末尾添加type => image I have array like this: 我有这样的数组:

array(5) {
  [0]=>
  array(7) {
    ["idfile"]=>
    string(2) "71"
    ["iduser"]=>
    string(1) "1"
    ["name"]=>
    string(60) "11745552_873843849371628_3215645663726390853_n-57335133dee48"
    ["extension"]=>
    string(3) "jpg"
    ["isImage"]=>
    string(1) "1"
    ["is_deleted"]=>
    string(1) "0"
    ["add_date"]=>
    string(19) "2016-05-11 15:35:15"
  }
  [1]=>
  array(7) {
    ["idfile"]=>
    string(2) "72"
    ["iduser"]=>
    string(1) "1"
    ["name"]=>
    string(19) "black-57335133e1ded"
    ["extension"]=>
    string(3) "jpg"
    ["isImage"]=>
    string(1) "1"
    ["is_deleted"]=>
    string(1) "0"
    ["add_date"]=>
    string(19) "2016-05-11 15:35:15"
  }
  [2]=>
  array(7) {
    ["idfile"]=>
    string(2) "73"
    ["iduser"]=>
    string(1) "1"
    ["name"]=>
    string(21) "Canon_1-57335133e4394"
    ["extension"]=>
    string(3) "jpg"
    ["isImage"]=>
    string(1) "1"
    ["is_deleted"]=>
    string(1) "0"
    ["add_date"]=>
    string(19) "2016-05-11 15:35:15"
  }
}

You can use array_walk() and define the first argument of your callback as reference, but I assume foreach is a bit faster. 您可以使用array_walk()并将回调的第一个参数定义为引用,但是我认为foreach更快。

array_walk($array, function (&$value) {
    $value['type'] = 'image';
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM