我使用nl2br().<br/>
现在的问题是,当我稍后在文本区域中显示此输入时,我不想显示"br"标记,而是将其作为新行显示。<br/>
我使用的是str_replace,但每次来回都会添加一个新行。
例如,用户输入

Hello
World

它存储为
Hello<br />World

我很好。
但是当我在文本区域再次显示它时(在str_replace..用“\n”替换br标记之后)
Hello

World  //which if i submit gives me Hello<br /><br />World

有什么方法可以实现我想在这里做的事吗?

最佳答案

不要与nl2br一起存储。您应该只存储发布的原始数据。如果要更新它以供显示,请在此时使用nl2br

if ($storing) {
    $dbstmt->execute($_POST['textarea-value']);
}
else {
    $textareaValue = $db->query($select);
    echo "<div>" . nl2br(htmlspecialchars($textareaValue)) . "</div>";
    echo "<textarea>" . htmlspecialchars($textareaValue) . "</textarea>";
}

10-07 19:49
查看更多