Здравствуйте. Есть 2 таблицы: competition_type в ней столбцы id_competition, competition_name и events в ней id_events, id_competition, events_name,получается связь один (competition_type) ко многим (events) т.к. одной записи из competition_type соответствует несколько записей из events. Хотелось чтобы возвращаемый результат получился вида: competition_name а потом в массиве шли все события относящиеся к данному названию и далее по названию столбца competition_name. Все что пока нарыл, это запрос вида: 'select * from competition_type ' .'INNER JOIN events USING(id_competition) ' Но как данные привести к нужному виду не пойму. Подскажите как можно привести к нужному виду?
Просто пересоберите исходный массив в тот, что вам нужен, по нужным условиям, пример: PHP: $a = array( 'яблоки' => '5 кг', 'груши' => '3 кг', 'арбузы' => '3 шт.', 'помидоры' => '2 кг', 'огурцы' => '4,5 кг', 'капуста' => '5 шт.', ); $new = array(); // пересобираем исходный массив на многомерный echo '<ul>'; foreach($a as $key => $val) { if ($key === 'яблоки' || $key === 'груши' || $key === 'арбузы' ) { $new['fruit'][$key] = $val; } else { $new['vegetables'][$key] = $val; } } echo '</ul>'; // выводим результат echo '<pre>'; print_r($new); echo '</pre>'; Результат: PHP: Array ( [fruit] => Array ( [яблоки] => 5 кг [груши] => 3 кг [арбузы] => 3 шт. ) [vegetables] => Array ( [помидоры] => 2 кг [огурцы] => 4,5 кг [капуста] => 5 шт. ) ) Ничто не мешает из одного массива сделать два, или наоборот разные массивы объединить в один. Поэкспериментируйте - разберетесь.