foreach (array_combine(array_keys($ar), array_keys($ar2)) as $key => $key2) {
echo $key, ', ', $key2, '<br>';
echo $ar[$key], ', ', $ar2[$key2], '<br>';
}
Это строго требует, чтобы оба массива имеет одинаковое число элементов ,
В качестве альтернативы, если вы хотите вернуться какое-то новое значение вместо отображения, я предлагаю следующее:
$result = array_map(
function ($key, $val, $key2, $val2) {
return /* something like array("$key-$key2" => "$val-$val2") */;
},
array_keys($ar), $ar, array_keys($ar2), $ar2
);
Для более «голого металла» (и, вероятно, более эффективный) решения, делать :
reset($ar);
reset($ar2);
while (list($key, $val) = each($ar)) {
list($key2, $val2) = each($ar2);
echo $key, ', ', $key2, '<br>';
echo $val, ', ', $val2, '<br>';
}
пользователя для цикла вместо Еогеасп –
размер обоих массива одинаковы или нет –
, если размер обоих массива же идти с цикл и работать с индексом – Affan