небольшой вопрос

Discussion in 'PHP' started by rubik-nerubik, 3 Sep 2009.

  1. rubik-nerubik

    rubik-nerubik Elder - Старейшина

    Joined:
    4 May 2007
    Messages:
    248
    Likes Received:
    9
    Reputations:
    -2
    как мне реализовать путём пхп
    такое
    есть строка:
    abadada
    в неё надо вставить символ |, а именно так:
    a|b|a|d|a|d|a
     
  2. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    ну тут либо циклом идти с запоминанием символов, либо преобразовывать в массив, и в него добавлять элементы(array merge какой-нибудь)
     
    1 person likes this.
  3. rubik-nerubik

    rubik-nerubik Elder - Старейшина

    Joined:
    4 May 2007
    Messages:
    248
    Likes Received:
    9
    Reputations:
    -2
    ну мож набросаешь?
     
  4. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    не, это как-то заёбно, лучше юзать что-то типа:

    PHP:
    function insert_char($index$str$char//добавляет символ $char в строку $str на позицию $index
    {
        
    $str_prev substr($str$index, -$index);
        
    $str_next substr($str$indexstrlen($str) - $index);
        return 
    $str_prev.$char.$str_next//возвращаем новую строку, не меняя предыдущую
    }
     
  5. rubik-nerubik

    rubik-nerubik Elder - Старейшина

    Joined:
    4 May 2007
    Messages:
    248
    Likes Received:
    9
    Reputations:
    -2
    че-то как-то отказывается работать) на денвере точно)
     
  6. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    PHP:
    $str 'fsdgssdhs';
    $str preg_replace('/(.{1})/''$1|'$str);
    print 
    substr($str0strlen($str)-1);
     
    _________________________
    2 people like this.
  7. rubik-nerubik

    rubik-nerubik Elder - Старейшина

    Joined:
    4 May 2007
    Messages:
    248
    Likes Received:
    9
    Reputations:
    -2
    каими респект и уважуха)
     
  8. Sharky

    Sharky Elder - Старейшина

    Joined:
    1 May 2006
    Messages:
    487
    Likes Received:
    312
    Reputations:
    46
    PHP:
    $str 'abadada';
    $chars preg_split('//'$str, -1PREG_SPLIT_NO_EMPTY);
    $imp implode("|"$chars);

    echo 
    $imp;
     
    1 person likes this.
  9. Solker

    Solker Elder - Старейшина

    Joined:
    4 May 2006
    Messages:
    175
    Likes Received:
    53
    Reputations:
    18
    Тоже предложу свой вариант ответа =)
    Зачем регулярные, любая строка это массив.

    PHP:
    $str 'abadada';
    for(
    $i=0$i<strlen($str); $i++) 
       
    $finish .= $str[$i]."|";
    echo 
    trim($finish,'|');
     
    1 person likes this.