За последние 24 часа нас посетили 22734 программиста и 1279 роботов. Сейчас ищут 833 программиста ...

Объединить массивы

Тема в разделе "PHP для новичков", создана пользователем Kvandaik, 24 окт 2018.

Метки:
  1. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    Имеются массивы
    foreach($k as $t => $r){
    $r = explode(" ", $r);
    print_r($r);
    }
    Array ( [0] => 10.10.1.0 ) Array ( [0] => FF:66:00:77:FF:AB ) Array ( [0] => 7 ) ну и тд
    какCделать объединить чтобони выводились так:Array( [0] => 10.10.1.0 [1] => FF:66:00:77:FF:AB [2] => 7 )
     
  2. Artur_hopf

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

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    PHP:
    1. foreach($k as $t => $r){
    2. $array = explode(" ", $r);
    3. }
    4. print_r($array);
    Как то так, методом тыка разберешься =)
     
  3. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    может недопонял есть массивы Array ( [0] => 10.10.1.0 ) Array ( [0] => FF:66:00:77:FF:AB ) Array ( [0] => 7 )
    а надо чтоб они были в одном арреее Array( [0] => 10.10.1.0 [1] => FF:66:00:77:FF:AB [2] => 7 )
     
  4. yanuzay

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

    С нами с:
    28 мар 2018
    Сообщения:
    498
    Симпатии:
    57
    array_merge объединяет массивы, как раз все в одну кучу сваливает как тебе и нужно
     
    KRU нравится это.
  5. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    они у меня в цикле выводятся Array ( [0] => 10.10.1.0 ) Array ( [0] => FF:66:00:77:FF:AB ) Array ( [0] => 7 ) Array ( [0] => 10.10.1.1 ) Array ( [0] => FF:66:00:77:FF:AС ) Array ( [0] => 8 ) Array ( [0] => 10.10.1.2 ) Array ( [0] => FF:66:00:77:FF:AD) Array ( [0] => 9 ) итд, как их объеденить по 3 в один массив array_merge посмотрел пример <?php
    $a1=array("red","green");
    $a2=array("blue","yellow");
    print_r(array_merge($a1,$a2));
    Array ( [0] => red [1] => green [2] => blue [3] => yellow )
    ?>
     
  6. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    Судя по коду есть массив строк, в которых значения разделены пробелами. Нужно эти строки преобразовать в массивы. Так?
    Если да - можно использовать array_map()
     
  7. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    Да есть строки 10.0.0.1 AA:SS:DD:FF:HH 35 10.0.0.2 AA:TT:GG:BB:CC 36 разделены пробелом как получить такой массив
    Код (Text):
    1. Array( [0] => 10.0.0.1 [1] => AA:SS:DD:FF:HH [2] => 35 ) Array( [0] => 10.0.0.2 [1] => AA:TT:GG:BB:CC [2] => 36 )
    , а не такие
    Код (Text):
    1. Array ( [0] => 10.0.0.1 ) Array ( [0] =>AA:SS:DD:FF:HH ) Array ( [0] => 35 )
     
  8. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    PHP:
    1. $string_array; // исходный массив строк
    2. $new_array = array_map(function($str){
    3.     return explode(' ', $str);
    4. }, $string_array);
    В Вашем случае $k не похож на исходный массив строк - скорее это уже разбитая на фрагменты строка.
     
  9. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    будет ли работать тк массив получается из цикла
     
  10. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    Если это массив строк - Вы получите массив массивов, где каждая строка будет разбита по пробелам на элементы массива. Как был получен массив строк - не важно.
     
  11. Kvandaik

    Kvandaik Новичок

    С нами с:
    5 июл 2018
    Сообщения:
    121
    Симпатии:
    1
    },$string_array); чего то не хватает
     
  12. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    $string_array - надо заменить на свое имя массива. $k - явно не то.
     
  13. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
  14. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @MouseZver, для начала автору надо получить двумерный массив, что он и пытается сделать. А про это даже речи не было.
     
  15. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    вроде тут все понятно было написано
     
  16. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
  17. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
  18. Maputo

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

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @MouseZver, у автора не та ситуация. У автора в лучшем случае такой массив:
    PHP:
    1. ['10.0.0.1 AA:SS:DD:FF:HH 35',
    2.  '10.0.0.2 AA:TT:GG:BB:CC 36'];
    или куча вот таких:
    PHP:
    1. ['10.0.0.1'];
    2. ['AA:SS:DD:FF:HH'];
    3. ['35'];
    4. ['10.0.0.2'];
    5. ['AA:TT:GG:BB:CC'];
    6. ['36'];
     
  19. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
    Тогда пусть конкретные данные выдаст входных и что должно получиться из них в итоге. Иначе с 9 утра не тронулись с места оказывается
     
    KRU нравится это.