Объединить массивы внутри цикла foreach

1

У меня проблема. У меня была часть кода.

    foreach ($query->result() as $server)
    {
        //Prepare host and port to pass to mon script
        list($host, $port) = explode(':', $server->address);

        $GS = new Source($host, $port);

        $result[$server->id]['id'] = $server->id;

        if(!$result[$server->id] = $GS->get_details())
            unset($result[$server->id]);
    }

Внутри этого цикла у меня есть идентификатор ширины массива:

$result[$server->id]['id']

После этого у меня это:

if(!$result[$server->id] = $GS->get_details())
        unset($result[$server->id]);

Этот код проверяет, запущен ли сервер, и уничтожает пустой массив. Он генерирует новый массив, который переписывает мой массив, созданный ранее.

Итак, как я могу объединить эти два массива в цикле с минимальным кодом? Thanx.

Теги:
arrays
merge

1 ответ

0
Лучший ответ

Обновите свой код следующим образом

if($result[$server->id] != $GS->get_details())
    unset($result[$server->id]);
else
    $result[$server->id]['id'][] = $server->id;

Ещё вопросы

Сообщество Overcoder
Наверх
Меню