Функция replace()

Тема в разделе "PHP", создана пользователем yeaahhh, 26 июл 2011.

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

    yeaahhh

    Регистр.:
    8 май 2008
    Сообщения:
    278
    Симпатии:
    11
    Ребят. Есть html-код:
    HTML:
    
    <br />
    <br />
    
    Хочу через функцию replace() сделать 1 <br />

    PHP:
    function delbr($str) { 
    $str str_replace("<br /><br />","<br />",$str);
    return 
    $str
    }

    function 
    delbr($str) { 
    $str str_replace("<br /> <br />","<br />",$str);
    return 
    $str
    }
    Ни так ни так не получается..
    Подскажите, плиз, как можно реализовать задуманное? Заранее спасибо
     
  2. chibit

    chibit Life sucks.

    Регистр.:
    4 дек 2007
    Сообщения:
    419
    Симпатии:
    285
    Попробуй для Windows
    Код:
    $str = str_replace("<br />\r\n<br />","<br />",$str);
    Или для Linux
    Код:
    $str = str_replace("<br />\n<br />","<br />",$str);
     
  3. tagorra

    tagorra Создатель

    Регистр.:
    18 июл 2011
    Сообщения:
    13
    Симпатии:
    3
    можно регуляркой.
    PHP:
    function delbr($str) {  
    $str preg_replace('/(<br \/>\s*)+/isU','<br />',$str); 
    return 
    $str;
    }
     
  4. strnet

    strnet Писатель

    Регистр.:
    5 мар 2010
    Сообщения:
    2
    Симпатии:
    3
    PHP:
    str_replace('<br />'.chr(13).chr(10).'<br />','<br />',$text)
     
  5. PHPCod3r

    PHPCod3r

    Регистр.:
    7 июн 2010
    Сообщения:
    261
    Симпатии:
    25
    ну можно еще вспомнить что строки могут задаваться и в восьмеричном виде(символы имеют вид \002) и в шестрацетиричном
    (символы имеют вид \x23)


    тут
    http://www.php.net/manual/en/language.types.string.php
    пункт "Double quoted" табличка "Escaped characters"
     
  6. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    PHP:
    str_replace'<br />' PHP_EOL '<br />''<br />'$text );
    И никакой мороки с Win/Linux, chr и прочей ерундой.
     
    chibit нравится это.