当用户从textarea中保存文本时:
bfajsdb fkjasdfasjkdfasdfasdf asdf asdf sdf
asdfasdfasdfasdf asd asdf asdf
sdfasdfasdf
在texignrea中使用codeignter中的nl2br_except_pre函数将其保存在数据库中,如:
bfajsdb fkjasdfasjkdfasdfasdf asdf asdf sdf
<br>
asdfasdfasdfasdf asd asdf asdf
<br>
sdfasdfasdf
在div或p标签中输出很好.或者在html输出中.
但是,当再次在textarea内部进行重新填充时,它会显示标签,这些标签很丑陋并且会使用户感到困惑.
如何在从数据库重新填充保存的值之前清理输出,以便它在textarea中查找如下:
bfajsdb fkjasdfasjkdfasdfasdf asdf asdf sdf
asdfasdfasdfasdf asd asdf asdf
sdfasdfasdf
而不是这样的:
bfajsdb fkjasdfasjkdfasdfasdf asdf asdf sdf
<br>
asdfasdfasdfasdf asd asdf asdf
<br>
sdfasdfasdf
解决方法:
好吧,粗略的回答是“只使用strip_tags”:
$raw_textarea = 'bfajsdb fkjasdfasjkdfasdfasdf asdf asdf sdf
<br>
asdfasdfasdfasdf asd asdf asdf
<br>
sdfasdfasdf';
$clean_textarea = strip_tags($raw_textarea);
echo $clean_textarea;
但事实上,还有更多内容:也许您需要担心消毒输出,而不仅仅是清除不相关的标签.我建议在这个主题上阅读this discussion.
标签:php,nl2br 来源: https://codeday.me/bug/20190723/1511905.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。