Чуть ранее тут была похожая тема об объединении массивов. Но там другая задача и я не увидел для себя нужного решения. Итак, есть два массива: Код (Javascript): Array ( [0] => red [1] => yellow [4] => green ) Код (Javascript): Array ( [0] => красный [1] => жёлтый [4] => зелёный ) Как видим, в первом массиве значения цветов указаны по-английски, во втором – по-русски, ключи у них идентичны. Требуется получить массив такого вида: Код (Javascript): Array ( [0] => red, красный [1] => yellow, жёлтый [4] => green, зелёный ) P.S. В многочисленных примерах преимущественно приводятся объединение второго массива в конец первого с различными вариациями выборки значений. Но это совсем не то. P.P.S. Убедительная просьба к опытным программистам: будьте добры, не кидайтесь тапками, испорченными овощами и куриными яйцами с истёкшим сроком годности – это для нас лишняя потеря времени, лучше укажите правильный путь для поиска верного решения.
Правильный путь тут один и я уже о нём говорил. Надо читать книги и как можно больше. И дело даже не в том, что вы не можете написать элементарный код, дело в том, что прочитав пару книг вы поймёте, что и объединять то скорее всего ничего не нужно. PHP: <?php foreach ($arr1 as $key=>$value){ $new[$key] = (isset($arr2[$key])) ? $value.', '.$arr2[$key] : $value ; }
@Valick, спасибо Вам за код – к нему я вернусь чуть позже, а пока немного (самую малость) грустной лирики. Я отредактировал Ваше сообщение и привёл его к тому виду, каким по сути оно и должно быть. В следующий раз (если Ваш ответ будет в том же духе) я редактировать уже ничего не буду и в ответку получите нелицеприятный комментарий. Итак, ниже Ваш отредактированный ответ: ======================================= Скорее всего, и объединять-то ничего не нужно. PHP: <?php foreach ($arr1 as $key=>$value){ $new[$key] = (isset($arr2[$key])) ? $value.', '.$arr2[$key] : $value ; } ======================================= Код работает исправно, за что Вам спасибо. Ни в имеющейся литературе, ни в Интернете ничего подобного я не встречал. Зато бесчисленное множество раз приводятся примеры слияния второго массива в конец первого с различными вариациями выборки значений. Честно говоря, не совсем точно понимаю как он работает. Объясните, пожалуйста, подробно принцип работы строки: PHP: $new[$key] = (isset($arr2[$key])) ? $value.', '.$arr2[$key] : $value ;
@GoSou, скорее всего это мой последний комментарий в ваш адрес, а вы и дальше редактируйте, что и как хотите. Удачи.
Ну и чудненько. Редактировать буду всё, что посчитаю нужным с целью смягчения тона в диалоге и/или исправления грубых грамматических ошибок. Кстати: Ваши сообщения с точки зрения грамматики написаны на высоком уровне и это весьма похвально, чего нельзя сказать о многих-многих пользователях Интернета (включая и данный форум), в текстах которых ошибка на ошибке и ошибкой погоняет). В завершение: и Вам удачи...
На других Интернет-ресурсах почитал различные статьи, но я всё же разобрался с кодом без Ваших разъяснений, хотя это и заняло чуть больше времени, чем если бы Вы сразу же объяснили что к чему. Теперь я знаю принцип его работы и, невзирая ни на что, ещё раз искренне благодарю Вас за помощь.