【发布时间】:2017-04-14 03:56:22
【问题描述】:
我有一个($bio) 形式的文本区域,用户可以在其中将文本保存到 MySQL 数据库。
我正在尝试保留用户可能在文本中进行的任何换行符。
文本以我想要的方式显示在另一个页面上(这样做):
<?php echo nl2br(htmlspecialchars($bio));?>
但是在表单页面中显示了使换行符的html代码(像这样)
There is a line break<br />
here<br />
<br />
如何隐藏这段 html 代码?
表格
<textarea name="bio" id="bio" placeholder="<?php echo nl2br(htmlspecialchars($bio));?>"><?php echo nl2br(htmlspecialchars($bio));?></textarea>
谢谢。
【问题讨论】:
-
来自 PHP doc comments,你可以做类似
function back2nl($string) { return preg_replace('#<br\s*/?-->#i', "\n", $string); }的事情(有很多) -
我明白了。我不太清楚应该在哪里使用 preg_replace:
<textarea name="bio" id="bio" placeholder="<?php echo nl2br(htmlspecialchars($bio));?>"><?php echo nl2br(htmlspecialchars($bio));?></textarea> -
我通常会将文本值分配给 $var 然后执行函数,然后在 textarea 中回显它
-
如果你成功了告诉我
-
是的,这行得通。非常感谢。