Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обратная функция nl2br 
V
    Опции темы
phpsc
Дата 22.1.2011, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



Есть такая?
--------------------
Социальная сеть
PM MAIL   Вверх
phpsc
Дата 23.1.2011, 00:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 234
Регистрация: 22.11.2010

Репутация: нет
Всего: 0



Цитата
function convert_html_to_bb($description){
$description=nl2br($description); 
  
$input=array("<br />","\n","\r");
$output=array("[br]",'','');
$description=str_ireplace($input,$output,$description);

return $description;
}

function convert_bb_to_html_edit($description){
$input=array("[br]");
$output=array("\n");
$description=str_ireplace($input,$output,$description);
return $description;
}



Это сообщение отредактировал(а) phpsc - 23.1.2011, 00:51
--------------------
Социальная сеть
PM MAIL   Вверх
skyboy
Дата 23.1.2011, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(phpsc @  22.1.2011,  22:42 Найти цитируемый пост)
Есть такая? 

Код

$string = str_replace(array("<br>", "<br />"), "\n", $string);

PM MAIL   Вверх
Kiramoff
Дата 14.11.2012, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 14.11.2012

Репутация: нет
Всего: нет



Цитата(skyboy @ 23.1.2011,  01:53)
Код

$string = str_replace(array("<br>", "<br />"), "\n", $string);

оно в принципе, правильно, но не всегда. Если задача просто заменить <BR> на \n, то верно. Если же вы текст конвертировали с помощью nl2br и Вам надо конвертировать его обратно, то сработает некорректно.

nl2br  заменяет "\n" на "<br>\n", соответственно в результате обратного конвертирования получим \n\n, т.е. +1 лишнюю строку.

в данном случае коректнее будет либо 
Код

$string = str_replace(array("<br>", "<br />"), "", $string);

либо
Код

$string = str_replace(array("<br>\n", "<br />\n"), "\n", $string);


в зависимости от ситуации
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0426 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.