php - PHP - 将正常结构的数组附加到多维数组中的嵌套数组
问题描述
我有两个数组。一个是多维数组,另一个是正常结构,如下所示。
Array (
[0] = Array
(
[0] => Array
(
[james] => 1
[kevin] => 2
)
[1] => Array
(
[joe] => 1
[jim] => 2
)
)
[1] = Array
(
[0] => Array
(
[jill] => 1
[john] => 2
)
[1] => Array
(
[janet] => 1
[clarence] => 2
)
)
)
和第二个数组
Array
(
[0] => Array
(
[total_stuff] => 75210
)
[1] => Array
(
[total_stuff] => 95640
)
)
如何将第二个数组的第一个值附加到多维数组中第一个内部数组的末尾,使其看起来像后面的数组?我需要保留第二个数组的值,而不是键。
Array (
[0] = Array
(
[0] => Array
(
[james] => 1
[kevin] => 2
)
[1] => Array
(
[joe] => 1
[jim] => 2
)
[2] => Array
(
[total_stuff] => 75210
)
)
[1] = Array
(
[0] => Array
(
[jill] => 1
[john] => 2
)
[1] => Array
(
[janet] => 1
[clarence] => 2
)
[2] => Array
(
[total_stuff] => 95640
)
)
)
解决方案
您可以使用数组映射和数组合并来完成
<?php
$a1=array (
array
(
array
(
"james" => 1,
"kevin" => 2
),
array
(
"joe" => 1,
"jim" => 2
)
),
array
(
array
(
"jill" => 1,
"john" => 2
),
array
(
"janet" => 1,
"clarence" => 2
)
)
);
$a2=array
(
array
(
"total_stuff" => 75210
),
array
(
"total_stuff" => 95640
)
);
//merge each index with corresponding index of second array to form new array as you desired
$new = array_map(function ($a,$k)use($a2) { return array_merge($a,array($a2[$k])); }, $a1,array_keys($a1));
echo "<pre>";
print_r($new);
?>
输出
Array
(
[0] => Array
(
[0] => Array
(
[james] => 1
[kevin] => 2
)
[1] => Array
(
[joe] => 1
[jim] => 2
)
[2] => Array
(
[total_stuff] => 75210
)
)
[1] => Array
(
[0] => Array
(
[jill] => 1
[john] => 2
)
[1] => Array
(
[janet] => 1
[clarence] => 2
)
[2] => Array
(
[total_stuff] => 95640
)
)
)
推荐阅读
- lora - LoRa Ra-01 P2P 距离
- javascript - 同一页面中的引导模型对话不起作用
- eclipse-rcp - 使用 Wizard Dialog Eclipse RCP 时如何设置自定义文件名?
- laravel-5 - Laravel 混合字体
- php - PHP MySQL heredoc 语法 - 我应该把 mysqli_real_escape_string() 放在哪里?
- node.js - 无法使用节点 js 请求库下载文件
- hyperledger - 以太坊也可以用于构建私有区块链网络吗?
- vb.net - 当我在查询字符串中使用日期时出现 ORA-03111 错误
- python - 我如何创建一个可以从中创建条形图的系列
- java - LDAP。没有身份验证的 Spring 应用程序