Глупый вопрос, сразу говорю еще новичек во всем этом. стоит задача сверить два массива с данными:
$arr1 = array(
"1" => 'Пятницкое шоссе',
"2" => 'Митино',
"3" => 'Волоколамская',
"4" => 'Охотный ряд');
$arr2 = array(
"4" => 'Охотный ряд',
"5" => 'Лужники',
"7" => 'Детский сад №3',
"29" => 'Алтуфьево',
"30" => 'Бибирево');
Задача следущая проверить их по названиям и если расходятся в $arr1 заменить ключи.
делал так:
foreach ($arr1 as $id_m => $name_m) {
foreach ($arr2 as $rp_id => $rp_name_m) {
}
if ($rp_name_m != $name_m) {
$id[] = $rp_id;
}
}
Но получилась (даже сам понял) какая то дичь((( код писать не прошу просто подскажите как делать? ну или что использовать. Заранее благодарю. Добра.
на выходе должно быть так
$arr1 = array( "1" => 'Пятницкое шоссе', "2" => 'Митино' );
$arr2 = array( "4" => 'Охотный ряд', "5" => 'Митино' );
$out = array( "1" => 'Пятницкое шоссе', "5" => 'Митино' );
Вам надо использовать array_flip:
$arr1_inverted = array_flip($arr1);
$arr2_inverted = array_flip($arr2);
foreach ($arr_inverted2 as $key => $value) {
if(array_key_exists($key, $arr1_inverted)) {
$arr1_inverted[$key] = $value;
}
}
$final = array_flip($arr1_inverted);
foreach ($arr1 as $id_m => $name_m) {
foreach ($arr2 as $rp_id => $rp_name_m) {
if ($rp_name_m === $name_m) {
unset($arr1[$id_m]);
$arr[$rp_id] = $name_m;
break;
}
}
}
Добрый вечер, У обработчика 2 формы, обработчик отправляет 2 сообщения на emailНо эти 2 сообщения нужны только при отправке из одной формы в которой...
Не работает оправка E-mail'а на phpХостинг беру тут от hostinger
Здравствуйте! Учу php, делаю блог, пытаюсь связать комментарии к постамТо есть, сделать так, чтоб каждый комментарий был связан со своим постом