За последние 24 часа нас посетил 25851 программист и 1726 роботов. Сейчас ищут 829 программистов ...

Добавить элемент в многомерный массив

Тема в разделе "PHP для новичков", создана пользователем DobroFenix, 4 июл 2012.

  1. DobroFenix

    DobroFenix Активный пользователь

    С нами с:
    22 май 2010
    Сообщения:
    89
    Симпатии:
    0
    Как правильно добавлять новые элементы в существующий многомерный массив?

    Нужно получить массив следующей конструкции:
    Код (Text):
    1. $servers = array(
    2.     'server1' => array('cs', '85.113.39.168', 27018),
    3.     'server2' => array('cs', '85.113.39.168', 27015),
    4. );
    Пробую собрать массив циклом, но ничего не получается -- появляется лишний коренной массив([0],[1],[2]....), который не нужен....
    Код (Text):
    1. $servers[]=array($server_array_name => array('cs', $GET_IP['dns'], $LIST_SRV['port']));
    Как собрать циклом массив(правильно добавить новые данные в многомерный массив), чтобы на выходе получился массив вида:
    array(
    'server1' => array('cs', '85.113.39.168', 27018),
    'server2' => array('cs', '85.113.39.168', 27015),
    );

    Добавлено спустя 16 минут 41 секунду:
    Разобрался.
    Решение:
    Код (Text):
    1. $servers=array();
    2. $i = 1;
    3. while ($i <= 10) {
    4. $server_array_name="server"."$i";
    5. $array2 = array($server_array_name => array('cs', '85.113.39.168', 27018));
    6. $servers = array_merge ($servers, $array2);
    7. $i++;
    8. }
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    через временную переменную собираешь массив с параметрами сервера

    $servers = array();
    for {
    $server = array();
    $server['name'] = 'cs';
    $server['ip'] = '1.1.1.1';

    $servers[] = $server;
    }