Не получается объединить массивы

Menro

web, seo, email, hack
Регистрация
27 Янв 2008
Сообщения
689
Реакции
138
Всем привет!
Имею два массива:

$array1 и $array2.
В обоих одинаковое количество элементов.

$array1

Код:
    [0] => Array
        (
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )

    [1] => Array
        (
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )

$array2

Код:
[0] => WP_Post Object
        (
            [ID] => 6798
        )

[1] => WP_Post Object
        (
            [ID] => 6799
        )

Хочу их склеить в одно, что бы получилось:

Код:
[0] => WP_Post Object
        (
            [ID] => 6798
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )

[1] => WP_Post Object
        (
            [ID] => 6799
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )

Пробую использовать array_merge(), но тогда второй массив просто добавляется к первому вниз.
Что-то запутался, подскажите кто может!
 
Второй массив - не массив. Обратите внимание на Object
 
Второй массив - не массив. Обратите внимание на Object
Спасибо, понял, что это не массив.
Можете подсказать как преобразовать в массив?
$array = (array) $array2 не помогает.
 
Если размерность $array1 и $array2 одинаковые то только по индексам с перебором одного из них
 
Спасибо, понял, что это не массив.
Можете подсказать как преобразовать в массив?
$array = (array) $array2 не помогает.
Второй массив каким образом получаете?
 
Второй массив каким образом получаете?
Спасибо, ваш вопрос натолкнул меня на верную мысль.
Нужно просто собирать свой массив сразу, а не собирать его, а потом лепить к нему другой.
 
Одну задачу решил, теперь вот думаю как решить другую. Может кто подскажет.

Есть массив:

Код:
[0] => Array
        (
            [ID] => 6798
            [post_title] => МРТ головного мозга (стандартный протокол, включающий Т2 акс, Т2 FLAIR саг, Т1 кор) 0,35T
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )

[1] => Array
        (
            [ID] => 6799
            [post_title] => Исследование головного мозга после введения контрастного вещества при МРТ
            [parent_category] => Лучевая диагностика
            [child_category] =>
        )
[54] => Array
        (
            [ID] => 8421
            [post_title] => Рентгенография зубов (1 снимок)
            [parent_category] => Лучевая диагностика
            [child_category] => Рентгенологические исследования
        )

Я хочу сделать список услуг с заголовками их категорий и подкатегорий (parent_category, child_category).

Типа:

Лучевая диагностика
  • МРТ головного мозга (стандартный протокол, включающий Т2 акс, Т2 FLAIR саг, Т1 кор) 0,35T
  • Исследование головного мозга после введения контрастного вещества при МРТ
  • ....
Рентгенологические исследования
  • Рентгенография зубов (1 снимок)
  • ...
 
Если правильно понял, в цикле while сделать $arr[parent_category_id][] = $row ??
 
У вас на каком-то этапе должно происходить примерно так:
Код:
// $L - коннект к базе
$sql = "ваш запрос";
$res = $L->query($sql);
while( $row = $res->fetch_assoc() )
{
    // И вот тут вы делаете что-то наподобие
    $arr[] = $row;
    // Попробуйте так
    $arr[$row['parent_id']][] = $row;
    // Где parent_id название вашего поля содержащие ID родительской директории
}
 
Назад
Сверху