[英]loop through two muti-dimensional array at same time using foreach loop
我试图通过一个foreach循环遍历两个多维数组
[array1] => Array (
[0] => Array ( 1,2,3 )
[1] => Array ( 4,5,6 )
[2] => Array ( 7,8,9 )
)
[array2] => Array (
[0] => Array ( 1,2,3 )
[1] => Array ( 4,5,6 )
[2] => Array ( 7,8,9 ) )
)
两者都有相同的键
我想同时访问两个数组的第一个数组,我想做这样的事情
foreach($array1 as $key1=>$value1 && $array2 as $key2=>$value2)
echo $value1[1]." ".$value2[2]
它不正确,但这就是我想要做的!
如果两个维度上两个数组之间的键相同:
foreach (array_keys($array1) as $key1) {
foreach (array_keys($array1[$key1]) as $key2) {
echo $array1[$key1][$key2].' '.$array2[$key1][$key2];
}
}
最坏的情况是,一个或两个数组中的一维或另一个维中的某些键丢失,您必须在读取之前合并它们(并确保每个循环和数组中键的值都存在)。
更新 :对二维数组结构两次使用相同的解决方案。
您可以使用此代码,因为您具有相同的密钥
foreach($array1 as $key=>$value) {
for($i=0; $i < count($value); $i++) {
echo $value[$i]." ".$array2[$key][$i];
}
}
感谢Maks3w的评论。
我不确定是否可以这样做,我会改用for循环:
for(i=0; i < count($array1); i++)
{
for(j=0; j < count($array1[i]); j++)
{
echo $array1[i][j];
echo $array2[i][j];
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.