За последние 24 часа нас посетили 17476 программистов и 1712 роботов. Сейчас ищут 1554 программиста ...

explode and implode

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

  1. kilogram

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

    С нами с:
    19 мар 2012
    Сообщения:
    116
    Симпатии:
    0
    Подскажите, как работает explode? Что-то не понял как.
    Вот implode объеденяет элементы в массив, вот например так:
    Код (Text):
    1. $m = array("Петя","Петров","19","лет");
    2. echo implode(' ',$m);
    А вот как с explode не совсем понятно что он берет и куда вставляет.
     
  2. JonnyB

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

    С нами с:
    13 дек 2009
    Сообщения:
    24
    Симпатии:
    0
    Адрес:
    Самара
    Код (Text):
    1. $m = array("Петя","Петров","19","лет");
    2. $string = implode(' ',$m);
    3. echo 'Делим пробелом:';
    4. var_dump(explode(' ', $string));
    5. echo 'Делим буквой е:';
    6. var_dump(explode('е', $string));
    7. echo 'Делим буквой т:';
    8. var_dump(explode('т', $string));
    9. echo 'Делим буквой какой_то_хренью_которой_нет_в_тексте:';
    10. var_dump(explode('какая_то_хрень_которой_нет_в_тексте', $string));
     
  3. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    implode и алиас join они раскладывают весь массив и возвращают строку...
    А explode создает массив с числовым значением через амперсанд, или как там его когда строку раскладываем =)))

    Вообщем для разных целей эти функции...
     
  4. hastenax

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

    С нами с:
    25 май 2012
    Сообщения:
    4
    Симпатии:
    0
    Так новички ни чему не научатся. Давайте говорить понятней:

    implode - собирает из массива (идущих подряд значений) строку подставляя между каждым значением первый параметр (разделитель)
    explode - обратная функция, из строки по средством разрыва на значения между указанным разделителем получается массив

    Код (Text):
    1. $m = array("Петя","Петров","19","лет");
    2. echo implode(' ',$m);
    Код (Text):
    1. $str = "Петя Петров 19 лет";
    2. $m = explode(' ',$str);
     
  5. JonnyB

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

    С нами с:
    13 дек 2009
    Сообщения:
    24
    Симпатии:
    0
    Адрес:
    Самара
    hastenax, супер! просто и понятно. Не поможешь мне объяснить viewtopic.php?f=27&t=40199 ? =)
     
  6. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    implode - принимает массив и через разделитель первого параметра вставляет в строку и выводит полностью.
    explode - принимает строку и создает массив (через разделитель первого параметра) с числовым ключем.

    Наверное так будет более понятнее...
     
  7. hastenax

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

    С нами с:
    25 май 2012
    Сообщения:
    4
    Симпатии:
    0
    еще более понятней будет сказать, что implode ничего не куда не выводит
     
  8. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Возвращает.
    Ладно, уговорил. =)
    Объединяет.
    Да не важно! =)
    Тогда уже:
    php.net/manual/ru/function.implode.php
    php.net/manual/ru/function.explode.php