preg_replace \ n в строке

по какой-то причине: preg_replace("/\\n/", "<br />", $string); не работает.

Строка выводится в таком формате: blah blah blah\nblah blah blah даже после замены preg.

Все, что я хочу сделать, это изменить, если для <br /> .

nl2br() тоже не работает, но в качестве его простого текста я не был уверен, следует ли это делать.

благодаря

** Обновить **

preg_replace работает над словом в строке. 🙁

попробуй это

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

Если вы хотите заменить литерал \n а не фактическую новую строку, попробуйте:

 <?php echo preg_replace("/\\\\n/", "<br />", 'Hello\nWorld'); 

Обратите внимание на количество обратных косых черт. Строка с двойными /\\\\n/ интерпретируется движком PHP как /\\n/ . Эта строка, передаваемая движку preg, интерпретируется как литерал \n .

Обратите внимание, что оба PHP интерпретируют "\n" как символ ASCII 0x0A . Аналогично, движок preg будет интерпретировать '/\n/' как символ новой строки (не совсем точно, какой из них).

Вы пробовали с помощью нескольких модификаторов строк в вашем RegEx?

 preg_replace("/\\n/m", "<br />", $string);