Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将BR标记转换为文本区域中的新行_Php_Html_Textarea - Fatal编程技术网

Php 将BR标记转换为文本区域中的新行

Php 将BR标记转换为文本区域中的新行,php,html,textarea,Php,Html,Textarea,这是我做的一个函数,它应该将每个Br换行符转换为\n: function br2nl($st){ return preg_replace('/<br(\s+)?\/?>/i', "\n", $st); } 我希望它输出如下内容: foo <br> bar <br> nuts foo 酒吧 坚果 您的HTML可能是 foo<br> bar<br> nuts<br> 看起来像 foo bar nuts 要接收

这是我做的一个函数,它应该将每个
Br
换行符转换为
\n

function br2nl($st){
    return preg_replace('/<br(\s+)?\/?>/i', "\n", $st);
}
我希望它输出如下内容:

foo <br>
bar <br>
nuts
foo
酒吧
坚果
您的HTML可能是

foo<br>
bar<br>
nuts<br>
看起来像

foo

bar

nuts
要接收您建议的输出,您需要从输入HTML中删除“\n”,然后将br替换为“\n”

代码应该是

function br2nl($st){
  $st_no_lb = preg_replace( "/\r|\n/", "", $st );
  return preg_replace('/<br(\s+)?\/?>/i', "\n", $st_no_lb);
}
函数br2nl($st){
$st_no_lb=preg_replace(“/\r |\n/”,“”,$st);
返回preg_replace('//i',“\n”,$st_no_lb);
}

是否确实要将多次出现的
替换为一个“\n”?例如,用一个新行字符替换两个相邻的

???如果您的单词之间只有一个标签,那么这个函数将起作用,顺便说一句。。。(没有空格)。也显示您的html代码
foo

bar

nuts
function br2nl($st){
  $st_no_lb = preg_replace( "/\r|\n/", "", $st );
  return preg_replace('/<br(\s+)?\/?>/i', "\n", $st_no_lb);
}