我有一个奇怪的问题。 我有一个简单的文本区域,单击一个保存按钮后,我使用角度控制器保存该数据。然后,一旦单击更新按钮,我就更新该数据库中的一行,其中一行行字段是来自该textarea的数据。
到目前为止一切都那么好,并且更新完成正常,当我在textarea中断行时问题就开始了,例如,我输入: "大家好, 这是另一行"
我检查了那些数据,当我将它保存在控制器中时,当我从服务器上取回它时,它看起来像这样: "大家好,↵这是另一排" 似乎没问题,但当我把它放在div中时,我得到以下结果: "大家好,这是另一行"
换线在哪里?为什么不显示?
我尝试了很多东西,比如一旦发送到数据库就将换行符更改为<br>
,稍后将其切换回换行符,似乎没有任何工作......
任何帮助都将不胜感激。
答案 0 :(得分:4)
好的 - 您需要做的是使用white-space:pre-wrap;
显示数据库中的数据。
示例:
<?php
echo '<p style="white-space:pre-wrap;">'.$yourVarWithWhiteSpace.'</p>';
?>
答案 1 :(得分:0)
您可以以编程方式更改在进出的路径上以<br />
标记结尾的\ n行。通过使用预处理语句,您需要使用像real_escape_string这样的东西。
那就是说,从长远来看,使用@itamar的方法可能会更好。
答案 2 :(得分:0)
只需使用此
即可<?php
echo '<p>'. nl2br($yourVarWithWhiteSpace).'</p>';
?>