当我在日志表中输入注释时显示不正确,我遇到了问题。
1
2
3
1
2
3
//$notes= str_replace("</br>","<br>",$sqlresult['Notes']);
//$notes = str_replace("\r","",$sqlresult['Notes']);
//$notes = str_replace("\n","",$sqlresult['Notes']);
//$notes = str_replace("\\","",$sqlresult['Notes']);
//$notes = str_replace("\r","<P>",$sqlresult['Notes']);
$notes = trim(preg_replace('/\s\s/', '<br>', $sqlresult['Notes']));
但是现在我从一个应用程序粘贴文本时收到错误,该应用程序显示为一条线路出现了很多额外的线路。
E.g。
Files are.. CDSEYE SUBMIT BY M99-CDSENTD
Files are...
CDSXEYE
(10 EXTRA BLANK LINES)
SUBMIT BY M99-CDSENTD
无论如何,我可以让$ notes显示输入完全输入的方式?
答案 0 :(得分:2)
你必须使用
的原因$notes = trim(preg_replace('/\s\s/', '<br>', $sqlresult['Notes']));
首先,行是因为处理输入并将其存储在sql数据库中的方式有问题。我们只是在最后移除了额外的换行符来堵住那个洞。如果我们想要输出真正的1对1输入,我们需要查看数据从输入文本框到sql数据库的存储方式。它是如何从该数据库中拉出并显示回输出的。如果其他人写了这段代码,那么可能需要一段时间才能找到完成的方法。
最终答案最终成为:
$notes = trim(preg_replace('/\r\r/', '<br>', $sqlresult['Notes']));
答案 1 :(得分:1)
您使用换行符(<br>
)替换每2个空格,这将是您休息的原因。
$notes = trim(preg_replace('/\s\s/', '<br>', $sqlresult['Notes']));
我建议删除上面的代码,然后输入
echo nl2br($your_text_variable); //in the view
答案 2 :(得分:1)
我认为问题出在第二行到最后一行,你用&lt; p&gt; 替换 \ r ,这会增加一个额外的空白行。请尝试&lt; br&gt; 。