Уважаемые посетители портала Kamensk.NET! Напоминаем вам, что будучи зарегистрированным пользователем вы получаете возможность оставлять комментарии к новостям на сайте и к топикам на форуме, иметь доступ к скрытым разделам и много других благ и привелегий. Пожалуйста заполните регистрационную форму, это отнимет у вас всего лишь несколько минут вашего времени.
Объединение массивов по общему полю (PHP)
Есть, скажем, 3 массива, полученных в результате выборки из MySQL базы данных. У каждого массива есть по одному общему полю. Например (упрощённо):
Игрушки 2 | Игрушки 6.30 | Цена 6.30
Фломастеры 3 | Фломастеры 8.50 | Цена 8.50
Хочется получить что-то типа:
2 Игрушки Цена 6.30
3 Фломастеры Цена 8.50
Конечно их можно слить ещё на стадии выборки из БД, но может есть какие-то штатные средства для работы с массивами?
Массивы такие:
$array1=array ( "Игрушки" => "2", "Фломастеры" => "3", ); $array2=array ( "Игрушки" => "6.30", "Фломастеры" => "8.50", ); $array3=array ( "Цена" => "6.30", "Цена" => "8.50", );
Третий не правильный т.к. ключ должен быть уникальным.
Пусть тогда для примера будет наоборот:
$array3=array ( "6.30" => "Цена", "8.50" => "Цена", );
Для твоего примера объединять массивы нет необходимости, можно все сделать проще:
foreach ($array1 as $key => $value)
{
$i=$array2[$key];
echo $value . " " . $key . " " . $i . " " . $array3[$i];
}
Для объединения массивов есть функция array_merge
Например для 1 и 2 массивов она будет работать так:
$result_array=array_merge($array1,$array2); /* Результат будет: "Игрушки" => "6.30", "Фломастеры" => "8.50", */
Еще есть array_merge_recursive но я так сходу не скажу подойдет ли она сюда, надо RTFM 


http://www.php.ru/manual/function.array-multisort.html <- не то?
Протянув руку помощи, не забудь разжать кулак.