如何在用户提交的文本中保留数据库中的换行符?

时间:2010-03-26 02:03:28

标签: forms webforms

用户通过文本区域元素输入文本,就像我们在StackOverflow上输入问题一样。

保留数据库中行间距以便在前端重现的最佳方法是什么?这个想法是文本应该出现与用户最初输入的相同的换行符和空白行。

1 个答案:

答案 0 :(得分:1)

嗯,HTTP POST数据(几乎)就像用户在textarea中输入一样;如果你的数据库存储了逐字输入的内容,那么它确实不会成为问题。我认为您正在考虑的是如何显示信息,以便在Web浏览器中正确格式化。

为此,您必须在文本出现时修改文本,例如,在PHP中:

$formatted_text = preg_replace(
    # patterns
    array('/\\r?\\n/', '/ /'),

    # replacements
    array('<br />', '&nbsp;'),

    # input text
    $text_from_database
);

将保留换行符和多个空格。