将数据推送到 php 中数组中的元素
Push data to elements in array in php
$array = array(array("a"=>1),array("a"=>2));
我需要将数据推送到 $array 中的子数组元素,
最终结果必须如下,
Array ( [0] => Array ( [a] => 1 [b] => 2 ) [1] => Array ( [a] => 2 [b] => 2 ) )
我使用了以下方法。
foreach($array as &$a){ $a['b']=2;}
$result = array_map("pushdata",$array);
function pushdata($a){
$a['b']=2;
}
什么是最合适和性能高的方式当$array 包含超过 1000 条记录时 ?
这里有 5 个项目的示例。
<?php
for($i = 1 ; $i<5 ; $i++){
$array[] = array("a"=>$i,"b"=>2);
}
print_r($array);
?>
使用array_walk , to iterate over the array and array_push将元素推送到每次迭代。
下面是使用 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
)
)
*/
$array = array(array("a"=>1),array("a"=>2));
我需要将数据推送到 $array 中的子数组元素,
最终结果必须如下,
Array ( [0] => Array ( [a] => 1 [b] => 2 ) [1] => Array ( [a] => 2 [b] => 2 ) )
我使用了以下方法。
foreach($array as &$a){ $a['b']=2;}
$result = array_map("pushdata",$array);
function pushdata($a){ $a['b']=2; }
什么是最合适和性能高的方式当$array 包含超过 1000 条记录时 ?
这里有 5 个项目的示例。
<?php
for($i = 1 ; $i<5 ; $i++){
$array[] = array("a"=>$i,"b"=>2);
}
print_r($array);
?>
使用array_walk , to iterate over the array and array_push将元素推送到每次迭代。
下面是使用 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
)
)
*/