Переменная php содержит следующую строку:
<p>text</p> <p>text2</p> <ul> <li>item1</li> <li>item2</li> </ul>
Я хочу удалить все новые строковые символы в этой строке, чтобы строка выглядела так:
<p>text</p><p>text2><ul><li>item1</li><li>item2</li></ul>
Я пробовал следующее без успеха:
str_replace('\n', '', $str); str_replace('\r', '', $str); str_replace('\r\n\', '', $str);
Кто-нибудь знает, как это исправить?
Вам нужно поместить \n
в двойные кавычки.
Внутри одинарных кавычек он обрабатывается как 2 символа '\'
за которым следует 'n'
Тебе нужно:
$str = str_replace("\n", '', $str);
PHP_EOL
альтернативой является использование PHP_EOL
как:
$str = str_replace(PHP_EOL, '', $str);
Вы должны обернуть \n
или \r
в ""
, а не ''
. При использовании одиночных кавычек escape-последовательности не будут интерпретироваться (кроме \'
и \\
).
В руководстве указано :
Если строка заключена в двойные кавычки ("), PHP будет интерпретировать больше управляющих последовательностей для специальных символов:
\ n linefeed (LF или 0x0A (10) в ASCII)
\ r возврат каретки (CR или 0x0D (13) в ASCII) \
(…)
Что-то более функциональное (удобное в использовании):
function replace_carriage_return($replace, $string) { return str_replace(array("\n\r", "\n", "\r"), $replace, $string); }
Использование PHP_EOL в качестве параметра замены поиска также является хорошей идеей! Престижность.
Это должно быть похоже на
str_replace ("\ n", '', $ str); str_replace ("\ r", '', $ str); str_replace ("\ r \ n", '', $ str);
Чтобы удалить новые строки из строки, выполните приведенный ниже код.
$newstring = preg_replace("/[\n\r]/","",$subject);
Правильный выход:
'{"data":[{"id":"1","reason":"hello\\nworld"},{"id":"2","reason":"it\\nworks"}]}' function json_entities( $data = null ) { //stripslashes return str_replace( '\n',"\\"."\\n", htmlentities( utf8_encode( json_encode( $data) ) , ENT_QUOTES | ENT_IGNORE, 'UTF-8' ) ); }
$no_newlines = str_replace("\r", '', str_replace("\n", '', $str_with_newlines));
Заменить строку:
$str = str_replace("\n", '', $str);
u также использовать, (% n,% t, Все специальные символы, числа, char и т. д.)
что означает, что любая вещь u может быть заменена в строке.