<?
$msg= str_replace('
',<br />,$msg); // вырезаем новую строку
?>
Как правильно вырезать перенос строки?
На <br /> заменить надо или вообще от переносов избавится?
Если первое, то $str =nl2br($str)
Если второе, то $str = preg_replace('~\s~', '', $str);
reaper, Нужно вырезать переносы, перед сохранением в файл, твой вариант не сработал.
Tez,
<?php
$s = "new\n\line\r\nanother line";
echo $s;
echo "\n------------------\n";
$s = preg_replace('~\s~', '', $s);
echo $s;
Результат:
new
\line
another line
------------------
new\lineanotherline
Ещё вариант:
[~] >>> cat t.php
<?php
$s = "new\n\line\r\nanother line";
echo $s;
echo "\n------------------\n";
$s = preg_replace('~[\r\n]~', '', $s);
echo $s;
[~] >>> php t.php
new
\line
another line
------------------
new\lineanother line
$s = preg_replace('~\s~', '<br />', $s);
так работает. только почемуто встовляет 2 тэга <br />
Tez, Так я не понял, из вырезать надо или на <br /> заменить?
Для замены на <br /> пока ничего лучше nl2br нет.
\s в регулярке означает, что нужно найти все пробельные символы, а именно - переносы строк, пробелы и табы.
reaper, Мне нужно переносы строк заменить на <br />, а сами переносы удалить. Функцея nl2br вставляет тэга перед переносном строки сам перенос не трогает.
Tez, $s = preg_replace('~[\r\n]~', '', trim(nl2br($s)));