我有一个评论框,当有人按下回车键时,Cake会将\ n(换行符)放入数据库。当我从数据库中检索它时,它显示为\ n而不是实际的中断或HTML a。
似乎没有处理\ n的选项,我无法理解,因为在textarea中输入是很常见的。我做错了什么?
由于 克里斯
答案 0 :(得分:2)
你忘了有php功能覆盖:) 你正在寻找nl2br()
echo nl2br(h($data));
注:
h()是出于安全原因。总是先使用h(),而不是nl2br()。
如果您有html内容,则不需要h()。 h()仅用于纯文本。
提示:您甚至可以增强烘焙模板以自动正确显示 - 请参阅http://www.dereuromark.de/2010/06/22/cake-bake-custom-templates/了解详情
答案 1 :(得分:0)
你也可以试试
echo str_replace("\\n", "<br />", $variable);
答案 2 :(得分:0)
CakePHP拥有自己的方法:
TextHelper::autoParagraph(string $text)
检查文档:https://book.cakephp.org/2.0/en/core-libraries/helpers/text.html