数组\合并\递归未正确合并(php)
以下两个阵列在[2015]没有像预期的那样合并。相反,它创建了上一个示例中的[2016] 我正在使用的代码: $merge=array\u merge\u recursive($array,$current) 第一个数组:($current) 第二个数组:($array) 当前结果:($merge) 编辑:预期结果数组\合并\递归未正确合并(php),php,arrays,Php,Arrays,以下两个阵列在[2015]没有像预期的那样合并。相反,它创建了上一个示例中的[2016] 我正在使用的代码: $merge=array\u merge\u recursive($array,$current) 第一个数组:($current) 第二个数组:($array) 当前结果:($merge) 编辑:预期结果 Array ( [Particulier] => Array ( [Weekend] => Array
Array
(
[Particulier] => Array
(
[Weekend] => Array
(
[2015] => Array
(
[06] => Array
(
[0] => Array
(
[id] => 111
[startDate] => 12-06-2015
[endDate] => 15-06-2015
[price] => 920
)
)
)
)
)
)
Array
(
[Particulier] => Array
(
[Weekend] => Array
(
[2015] => Array
(
[05] => Array
(
[0] => Array
(
[id] => 90
[startDate] => 01-05-2015
[endDate] => 04-05-2015
[price] => 920
)
[1] => Array
(
[id] => 91
[startDate] => 08-05-2015
[endDate] => 11-05-2015
[price] => 920
)
[2] => Array
(
[id] => 92
[startDate] => 15-05-2015
[endDate] => 18-05-2015
[price] => 920
)
)
[06] => Array
(
[0] => Array
(
[id] => 112
[startDate] => 19-06-2015
[endDate] => 22-06-2015
[price] => 920
)
[1] => Array
(
[id] => 111
[startDate] => 12-06-2015
[endDate] => 15-06-2015
[price] => 920
)
)
)
)
如果需要任何其他信息,请询问!
提前谢谢 根据您的描述,您必须使用关联数组(使用字符串索引,如“2015”),而不是数字索引(如2015)
我还建议使用唯一键作为事件的索引,并使用替代函数array\u replace\u recursive来防止PHP创建任何嵌套数组(请参见)预期结果?@anantkumarsingh补充道!我通过foreach循环创建数组。那么,如何获取字符串索引呢?array_replace_recursive不就是覆盖上一条记录吗?那不是我想要的。我想添加它。如果有问题,请发布生成数组的foreach循环代码。数组替换仅覆盖现有条目。使用唯一密钥,您将永远不会覆盖任何条目。
Array
(
[Particulier] => Array
(
[Weekend] => Array
(
[2015] => Array
(
[05] => Array
(
[0] => Array
(
[id] => 90
[startDate] => 01-05-2015
[endDate] => 04-05-2015
[price] => 920
)
[1] => Array
(
[id] => 91
[startDate] => 08-05-2015
[endDate] => 11-05-2015
[price] => 920
)
[2] => Array
(
[id] => 92
[startDate] => 15-05-2015
[endDate] => 18-05-2015
[price] => 920
)
)
[06] => Array
(
[0] => Array
(
[id] => 112
[startDate] => 19-06-2015
[endDate] => 22-06-2015
[price] => 920
)
)
)
[2016] => Array
(
[06] => Array
(
[0] => Array
(
[id] => 111
[startDate] => 12-06-2015
[endDate] => 15-06-2015
[price] => 920
)
)
)
)
Array
(
[Particulier] => Array
(
[Weekend] => Array
(
[2015] => Array
(
[05] => Array
(
[0] => Array
(
[id] => 90
[startDate] => 01-05-2015
[endDate] => 04-05-2015
[price] => 920
)
[1] => Array
(
[id] => 91
[startDate] => 08-05-2015
[endDate] => 11-05-2015
[price] => 920
)
[2] => Array
(
[id] => 92
[startDate] => 15-05-2015
[endDate] => 18-05-2015
[price] => 920
)
)
[06] => Array
(
[0] => Array
(
[id] => 112
[startDate] => 19-06-2015
[endDate] => 22-06-2015
[price] => 920
)
[1] => Array
(
[id] => 111
[startDate] => 12-06-2015
[endDate] => 15-06-2015
[price] => 920
)
)
)
)