表单的textarea里提交的文本,提交以后,被写入mysql数据库,然后再读出来显示出来。结果发现回车没有了,本来好多段,结果结合起来变成一大段。
有什么办法把在表单的textarea里提交的回车符转化为象<p>这样的html标记呢?在写入数据库前转化好?还是从数据库里读出来以后转化好?
能给个具体的代码吗?
------解决方案--------------------
echo nl2br($arr[txt]) ;
------解决方案--------------------
$arr['txt'] = nl2br($arr['txt']);
str_replace((char(13)), "<br>", $arr[txt]);
是错误的,因为 php 没有 char 函数,只有 chr 函数
但是写做 chr(13) 也是不妥的,因为 linux 下的文本中并没有这个“回车”符所以自己写的话,应写作
$arr['txt'] = preg_replace("/[\r\n]+/", "<br>", $arr['txt']);