因此功能nl2br很方便.除了在我的网络应用程序中,我想做相反的事情,将换行符解释为新行,因为它们将被回显为预先填充的表单.
str_replace可以<br />用我想要的任何东西取代它,但是如果我放入\n,它就会反复地反斜杠和n.它只有在我的脚本中间放置一个文字换行符并且打破缩进(因此没有尾随空格)时才有效.
看到:
<?=str_replace('<br />','
',$foo)?>
Run Code Online (Sandbox Code Playgroud)
我错过了逃脱角色吗?我想我尝试过各种组合......
Pas*_*TIN 18
可能会出现一些代码不够的情况; 所以,这样的事情,做你的替换:
$html = 'this <br>is<br/>some<br />text <br />!';
$nl = preg_replace('#<br\s*/?>#i', "\n", $html);
echo $nl;
Run Code Online (Sandbox Code Playgroud)
即比简单更复杂str_replace;-)
注意:我通常会说不使用正则表达式来操纵HTML - 但是,在这种情况下,考虑到正则表达式会很简单,我想它会没问题.
另外,请注意我使用过 "\n"
\n\n
基本上,<br>标签通常看起来像:
<br><br/>,在之前有任意数量的空格/而这第二点是str_replace不够.
rye*_*guy 12
你想要这个:
<?=str_replace('<br />',"\n",$foo)?>
Run Code Online (Sandbox Code Playgroud)
你可能忘了使用双引号.如果使用双引号,则仅对特殊字符解析字符串.
Amy*_*y B 12
你在写'\n'吗?因为只有用双引号括起来才会正确解释\n : "\n".
偏离主题:<?=语法是邪恶的.请不要为了团队中的其他开发人员而使用它.