我有2个数组:“ Array-List”和“ Array-Criteria”:
Array-List
(
[1] => APPLE
[2] => BANANA
[3] => ORANGE
[4] => LEMON
)
Array-Criteria
(
[0] => 1
[1] => 3
)
有没有一种快速的方法(我的Array-List
可以包含成千上万个条目),可以基于Array-List
从Array-Criteria
中选择值,而无需在PHP中循环访问Array-List
?
答案 0 :(得分:2)
使用array_intersect_key
和array_flip
函数以以下方式获取数据:
$arr1 = Array-List
(
[1] => APPLE
[2] => BANANA
[3] => ORANGE
[4] => LEMON
)
$arr2 = Array-Criteria
(
[0] => 1
[1] => 3
)
var_dump(array_intersect_key($arr1, array_flip($arr2)));
答案 1 :(得分:0)
如果您遍历这些条件,则可以构建一个列表项...
$selected = [];
foreach ( $arrayCriteria as $element ) {
$selected[] = $arrayList[$element];
}
然后$selected
将是您所收藏的物品的列表。
在快速测试中,它的速度大约是使用array_
方法的两倍。