我从使用mysql_real_escape_string清理过的数据库中提取内容。 因此,新行字符现在显示为“\ n”。 问题是该内容会显示给<内容中的用户。前>标签所以我不能用<替换\ n BR />例如。
我想在将结果插入<之前,我可以用实际的utf8字符代码替换\ n预>
somoneone可以协助吗?由于安全策略,不使用mysql_real_escape_string实际上不是一个选项。
感谢。
答案 0 :(得分:23)
echo '<pre>'.str_replace('\n', "\n", $string).'</pre>';
答案 1 :(得分:5)
str_replace("\\n","\n",$data);
答案 2 :(得分:4)
为什么不......
echo str_replace('\\n', PHP_EOL, "few lines\nof text here,\nblah, blah! etc!");
答案 3 :(得分:1)
我从使用mysql_real_escape_string清理过的数据库中提取内容。因此,新行字符现在显示为“\ n”
如果你没有对从数据库中撤回的原始数据做任何事情,那么ptoblem就是它在插入时被“消毒”了两次。
下进行。
答案 4 :(得分:-2)
这可能会有所帮助:
回波( '测试\ NTEST'); 显示为
测试测试
但 回波( “测试\ NTEST”); 显示为
<强>测试强>
<强>测试强>