Подскажите код для перемешки слов через запятую

Тема в разделе "Как сделать...", создана пользователем sidor80, 24 май 2012.

  1. sidor80

    sidor80 Постоялец

    Регистр.:
    15 фев 2007
    Сообщения:
    80
    Симпатии:
    33
    Есть словасочетание в строку через запятую к примеру (словосочетание1, словосочетание2, словосочетание3, ... словосочетание_n) их нужно премешать в строку в случайном порядке на пример чтоб получился результат (словосочетание3, словосочетание1, словосочетание2 ... словословосочетание_n). Подскажите код которій может это сделать и желательно с формой чтоб вставил в поле формы строку с словосочетаниями через запятую и получил результат премешаные словосочетание через запятую.
     
  2. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    погодь. ща вспомню эту функцию.
    Вспомнил:yahoo:
    Explode
     
  3. barabula

    barabula Нарушитель

    Регистр.:
    21 май 2009
    Сообщения:
    470
    Симпатии:
    77
    Если память не зименяеть,то это
    Код:
    rand();
    функция выводит значения рандомно, можно её допилить чтобы она выводила определенное число раз.
     
  4. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    а она-то тут коим боком поможет? зачем ему рандомное число?
     
  5. o_nix

    o_nix

    Регистр.:
    7 ноя 2007
    Сообщения:
    1.073
    Симпатии:
    1.037
    PHP:
    $out implode(',',shuffle(explode(','$in)));
    форму приделаешь сам, изучай $_POST
     
  6. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    ток у меня так?
    Код:
    Warning: implode(): Invalid arguments passed in C:\Users\Extalionez\AppData\Local\Temp\~Неназванный 1 on line 9 Call Stack: 0.0910 322736 1. {main}() C:\Users\Extalionez\AppData\Local\Temp\~Неназванный 1:0 0.0911 322992 2. implode() C:\Users\Extalionez\AppData\Local\Temp\~Неназванный 1:9 
    на
    PHP:
     $in 'словосочетание1, словосочетание2, словосочетание3';
    $out implode(',',shuffle(explode(','$in)));
    echo 
    $out;
    Не забываем что shuffle возвращает лишь boolean, а не строку. над примерно так
    PHP:
    $in 'seraf1, seraf2, seraf3';
    $out explode(', '$in);
    shuffle($out);
    $out implode(', '$out);
    echo 
    $out;
     
  7. o_nix

    o_nix

    Регистр.:
    7 ноя 2007
    Сообщения:
    1.073
    Симпатии:
    1.037
    PHP:
    $in 'erer1, ererer2, ererer3';
    $arr explode(','$in);
    shuffle($arr);
    $out implode(','$arr);
    echo 
    $out;
    нельзя shuffle как вложенное использовать, оно единицу возвращает
     
  8. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    а я о чём? и возвращает оно не единицу, а true/false(BOOLEAN тобишь). И пробел после запятой не забываем!
     
  9. Viodele

    Viodele Механик

    Administrator
    Регистр.:
    17 дек 2011
    Сообщения:
    111
    Симпатии:
    479
    А регой убрать все пробелы после запятых не вариант?
     
  10. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    Человеку на выходе нужно
    словосочетание3, словосочетание1, словосочетание2 ... словословосочетание_n
    Зачем убирать все пробелы?