我想在每个子数组的末尾添加新元素
$a1 = array(
array('name'=>"Dog",'cate'=>"Cat"),
array('name'=>"Puppy",'cate'=>"Kitten"),
array('name'=>"happy",'cate'=>"lucky")
);
这里我想在每个子数组中的“cate”之后添加'test'=>“test”。 我已经尝试过使用地图,但它不起作用。我希望得到这样的结果:
$a1 = array(
array('name'=>"Dog",'cate'=>"Cat",'test'=>"test"),
array('name'=>"Puppy",'cate'=>"Kitten",'test'=>"test"),
array('name'=>"happy",'cate'=>"lucky",'test'=>"test")
);
怎么可能。
答案 0 :(得分:0)
您可以尝试array_map
-
$a1 = array(
array('name'=>"Dog",'cate'=>"Cat"),
array('name'=>"Puppy",'cate'=>"Kitten"),
array('name'=>"happy",'cate'=>"lucky")
);
$new = array_map(function($x) {
$x['test'] = 'test';
return $x;
}, $a1);
<强>更新强>
$new = array_map(function($x) use($message) {
$x['test'] = $message;
return $x;
}, $a1);
答案 1 :(得分:0)
我不知道你究竟尝试了什么,但这个数组地图会起作用:
$a1 = array_map(function (array $a) { return $a + array('test' => 'test'); }, $a1);
答案 2 :(得分:0)
只需循环数组并将值添加到其中的每个数组中。
foreach($a1 as $k => $v) {
$a1[$k][$newkey] = $newvalue;
}