Php 如何根据值合并两个多维数组?
嗨,我有两个这样的数组Php 如何根据值合并两个多维数组?,php,arrays,multidimensional-array,merge,Php,Arrays,Multidimensional Array,Merge,嗨,我有两个这样的数组 array ( [0]=>array( [0]=>10, [1]=>Some Name.. ), [1]=>array( [0]=>11, [1]=>Some Name.. ), [2]=>array( [0]=>13, [1]=>Some Name.. ) ) array ( [0]=>array( [0]=>13,
array (
[0]=>array(
[0]=>10,
[1]=>Some Name..
),
[1]=>array(
[0]=>11,
[1]=>Some Name..
),
[2]=>array(
[0]=>13,
[1]=>Some Name..
)
)
array (
[0]=>array(
[0]=>13,
[1]=>Viewed
)
)
另一个这样的数组
array (
[0]=>array(
[0]=>10,
[1]=>Some Name..
),
[1]=>array(
[0]=>11,
[1]=>Some Name..
),
[2]=>array(
[0]=>13,
[1]=>Some Name..
)
)
array (
[0]=>array(
[0]=>13,
[1]=>Viewed
)
)
如何在不使用任何循环的情况下合并以上两个数组?有任何php功能可用于此?我需要这样一种发泄方式
array (
[0]=>array(
[0]=>10,
[1]=>Some Name..
),
[1]=>array(
[0]=>11,
[1]=>Some Name..
), [2]=>array(
[0]=>13,
[1]=>Some Name..
[2]=Viewed
)
)
您可以使用PHP函数。 请参见示例:
<?php
$ar1 = array("color" => array("favorite" => "red"), 5);
$ar2 = array(10, "color" => array("favorite" => "green", "blue"));
$result = array_merge_recursive($ar1, $ar2);
print_r($result);
?>
实现这一点不会有非循环方式。也许您正在寻找基于函数的语法,但对于这种情况,我认为这只会引入不必要的卷积 为获得最佳效率,请生成一个结果数组,该数组可兼作查找数组。如果结果数组中已存在该键,则只需将
[1]
值推入该行即可。如果您希望对结果重新编制索引,只需对其调用array\u values()
代码:()
功能性风格:()
为什么您选择了不使用循环的解决方案?您是否知道任何解决方案都会涉及循环,即使它没有显式地出现在PHP代码中?循环有什么问题?可能与@Zulkhaery Basrul重复-是的,我检查了这个问题。请先读我的问题。我可以通过在php代码中循环数组来实现这一点。但是我想知道我是否可以不使用任何循环来完成它。还有一种观点认为数组合并不会给出我在问题中打印的正确结果。为什么这个答案被接受?示例输入与索引数组的索引数组不相似。太多的研究人员被这个答案愚弄了!我的DV的失败证明和原因:请不要直接从手册中盲目复制粘贴文本。答案应根据OP的问题量身定制,并在提供样本数据时予以尊重。