“Join"数组的值从左数组到键从右数组


"Join" Arrays with values from left array to keys from right array

我有两个数组,我想要连接在一起,而不迭代它们。
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_fliparray_intersect_key

$intersect = array_intersect_key($Arr2, array_flip($Arr1))

然后可以使用array_merge将其平铺成一个数组。

$content = call_user_func_array('array_merge', $intersect);

演示:https://eval.in/430592