php - 在php中组合两个多维数组,其中一个的结构和另一个的内容
问题描述
我对 PHP 有点陌生。有没有办法合并以下两个数组,以便第二个数组中的 [2181] 和 [2180] 键(及其所有内容)可以替换第一个数组中的两个日期时间对象,同时仍然保持第一个数组的结构大批?第一个数组中的 datetime 对象将具有与 [2182] 和 [2180] 索引处第二个数组中的 [date] 键值相同的 [date] 键值,尽管我不确定此共享键是否 => value 将是正确合并数组所必需的。
1.) Array
(
[0] => Array
(
[0] => DateTime Object
(
[date] => 2017-04-23 13:35:17.000000
[timezone_type] => 3
[timezone] => America/Denver
)
)
[1] => Array
(
[0] => DateTime Object
(
[date] => 2017-04-22 13:35:17.000000
[timezone_type] => 3
[timezone] => America/Denver
)
)
2.) Array
(
[2182] => Array
(
[id] => 2182
[date] => 2017-04-23
[door] => Array
(
[1] => Array
(
[id] => 2999
)
)
)
[2180] => Array
(
[id] => 2180
[date] => 2017-04-22
[door] => Array
(
[1] => Array
(
[id] => 2994
)
)
)
这个最终数组是我需要的结构。
3.) Array
(
[0] => Array
(
[2182] => Array
(
[id] => 2182
[date] => 2017-04-23
[door] => Array
(
[1] => Array
(
[id] => 2999
)
)
)
)
[1] => Array
(
[2180] => Array
(
[id] => 2180
[date] => 2017-04-22
[door] => Array
(
[1] => Array
(
[id] => 2994
)
)
)
)
提前致谢!
解决方案
我不明白你到底在问什么。
给定您问题中想要的最终数组,您可以这样做
<?php
$date = [[0=>new dateTime()], [new dateTime()]];// why this array if you are not using..
$arr = [
2182=>["id"=>2182,"date"=>"2017-04-5", "door"=>[1=>["id"=>2999]]],
2180=>["id"=>2180,"date"=>"2017-04-22", "door"=>[1=>["id"=>2994]]]
];
print_r(($arr));
$newArr = [];
foreach($arr as $a){
$newArr[] = $a;
}
print_r($newArr);
在线测试
推荐阅读
- amazon-web-services - Zabbix 与 AWS Elasticache 的集成
- python - Pandas 按多列分组以获得多嵌套 Json
- symfony - xampp symfony5 学说查询编码
- azure-data-explorer - 查询 ADX 表时未显示标签
- deep-learning - 训练损失完全没有变化(PyTorch)
- python - 有没有一种方法可以从经过背景减法的视频中检测白色像素
- java - Tesseract / Tess4j 内存泄漏
- python - 计算两组数字之间的比例以计算出伺服点
- java - 创建一个包含所有自动化测试的可执行 .jar
- java - 代码仅在本地获取较旧的引用