Как слить все элементы массива в 1 элемет?

Тема в разделе "PHP", создана пользователем Solomon Kane, 25 янв 2011.

Модераторы: latteo
  1. Solomon Kane

    Solomon Kane Постоялец

    Регистр.:
    26 авг 2009
    Сообщения:
    144
    Симпатии:
    9
    Предположим, есть примерно такой массив:

    1 => красный

    2 => зелёный

    3 => черный.

    Как сделать так, чтобы в итоге получить следующее:

    1 => красный зелёный черный?

    Важный момент - никаких разделителей не надо, как есть, так и должно быть, то есть "красный зелёный чёрный" без никаких запятых и прочего.
     
  2. ashotik

    ashotik

    Регистр.:
    7 авг 2008
    Сообщения:
    176
    Симпатии:
    20
    КМК встроенными функциями не получится. Цикл, присвоение...
     
  3. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    PHP:
    $arr[] = implode(' '$arr);
     
    Solomon Kane нравится это.
  4. VandJ

    VandJ

    Регистр.:
    8 апр 2008
    Сообщения:
    318
    Симпатии:
    113
    PHP:
    <?
    $array = array(=> 'красный'=> 'зелёный'=> 'черный');
    $array implode(' '$array); //красный зелёный черный
    //в массиве
    $array0 = array($array);  
    // если индекс должен равнятся 1 то
    $array1 = array(=>"$array"); 
    ?>
     
    Solomon Kane нравится это.
  5. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    PHP:
    $color = array(=> 'красный'=> 'зелёный'=> 'черный');
    foreach(
    $color as $key=>$col){
    $Color.=$col;
    }
    если нужны пробелы между словами или какие либо знаки препинания то так:
    PHP:
    $color = array(=> 'красный'=> 'зелёный'=> 'черный');
    foreach(
    $color as $key=>$col){
    $Color.=$col.', ';
    }
     
    Solomon Kane нравится это.
  6. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    dino, ты че прикалываешься? Какой foreach? Родные функции не в моде?
     
  7. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    a_n_d_y, во первых человек задал вопрос и имеет полное право знать все варианты ответов, а во вторых foreach даст возможность дополнительно обработать массив...
    Ну например сделать его в виде
    или
    такого простой implode не даст выполнить...
    Мало ли как ещё нужно будет поизвращаться...
     
  8. Miraage

    Miraage Angular/Laravel

    Регистр.:
    3 июн 2008
    Сообщения:
    230
    Симпатии:
    51
    вы еще array_walk_recursive() вызовите...

    обычного implode() хватит с головой.