У меня есть два массива, каждый с разной структурой:
$websites = Array (
[1131] => Array (
[httpcode] => 403
[user_id] => 265
)
[1130] => Array (
[httpcode] => 403
[user_id] => 265
)
)
$responses = Array (
[1131] => 200
[1130] => 500
)
Я использую вложенный foreach l oop для замены httpcode
в массиве $websites
соответствующим новым httpcode
в массиве $responses
:
foreach ($websites as $site_id => &$details) {
foreach ($responses as $resp_id => $new_http) {
if ($site_id == $resp_id) {
$details['httpcode'] = $new_http;
}
}
}
Это работает успешно, и я получаю правильный результат:
$websites = Array (
[1131] => Array (
[httpcode] => 200
[user_id] => 265
)
[1130] => Array (
[httpcode] => 500
[user_id] => 265
)
)
Однако я понимаю, что вложенные циклы foreach имеют высокую стоимость в Циклы ЦП, и я хотел бы знать, есть ли более эффективный способ сделать это для больших массивов в отношении минимизации использования ЦП на сервере.