我有两个数组,我想要连接在一起,而不迭代它们。
Backgroundinfo:
$Arr1是一个数组,其中包含一个用户所在的所有组。
$Arr2是一个数组,包含所有与Groups相关的内容页,作为数组键。
我的目标是得到一个数组与所有内容页,用户被允许看到
$Arr1 = array("Group1","Group3","Group5");
$Arr2["Group1"] = array("Content1","Content2");
$Arr2["Group2"] = array("Content5");
$Arr2["Group3"] = array("Content3");
我的结果应该是一个包含所有"Content"元素的数组:
array("Content1","Content2","Content3");
是否有一些技巧与array_fill_keys或array_merge来避免迭代?
您可以尝试array_flip
和array_intersect_key
。
$intersect = array_intersect_key($Arr2, array_flip($Arr1))
然后可以使用array_merge
将其平铺成一个数组。
$content = call_user_func_array('array_merge', $intersect);
演示:https://eval.in/430592