在php中将数据推送到数组中的元素

时间:2015-01-04 07:19:51

标签: php arrays

$array = array(array("a"=>1),array("a"=>2));

我需要将数据推送到$ array中的子数组元素,

最终结果必须如下,

 Array ( [0] => Array ( [a] => 1 [b] => 2 ) [1] => Array ( [a] => 2 [b] => 2 ) )

我使用了以下方法。

  1. foreach($array as &$a){ $a['b']=2;}

  2. $ result = array_map(“pushdata”,$ array);

    function pushdata($a){
    $a['b']=2;
    }
    
  3. 当$ array包含超过1000条记录时,最合适且性能最高方式是什么?

3 个答案:

答案 0 :(得分:1)

以下是5个项目的示例。

<?php

  for($i = 1 ; $i<5 ; $i++){
     $array[] = array("a"=>$i,"b"=>2);
  }

  print_r($array);

?>

See online

答案 1 :(得分:1)

使用array_walk迭代数组并array_push将元素推送到每次迭代。

答案 2 :(得分:1)

以下是使用array_walk()向每个子数组添加新密钥b的示例:

$array = array(array('a' => 1), array('a' => 2));
array_walk($array, function(&$item, $key) {
  $item['b'] = 2;
});
print_r($array);
/* outputs:
Array
(
  [0] => Array
  (
      [a] => 1
      [b] => 2
  )
  [1] => Array
  (
      [a] => 2
      [b] => 2
  )
)
*/