我认为这是一个天真的问题,但我找不到合适的语法。
我有这段代码:
for ($i=1; $i<count($MyArray1); $i++){
$element=$MyArray1[$i];
$foo = $AnotherArray[$element];
echo $foo;
}
如何跳过第二行?我的意思是,第三行是
$foo = $AnotherArray[$MyArray1[$i]];
答案 0 :(得分:0)
for ($i=1; $i<count($MyArray1); $i++){
echo $AnotherArray[$MyArray1[$i]];
}
答案 1 :(得分:0)
您可以跳过相当数量的代码,以使其更清晰一些。首先使用foreach代替for,因为它是一种更可靠的迭代数组的方法。其次,我已经分解了你想要做的事情,简化你如何获得它。基本上使用一个数组的值作为另一个数组的键。那么如何分三行:
foreach(array_intersect_key($AnotherArray, array_flip($MyArray1)) as $value) {
echo $value;
}
这是使用优秀的array_intersect_key方法从$AnotherArray
中获取与其他数组中匹配的键的所有值。如果您想使用这些值,我们使用array_flip来交换键和值,然后循环遍历结果并回显它。