一尘不染

如何使用nl2br()处理带有'\ r \ n'的字符串?

mysql

我在提交表单时从管理员通过textarea检索存储在数据库中的产品描述值。当我选择从数据库中的描述,我得到$description = $row['description'];,我想响应主页上$描述是这样的:echo nl2br($description);但我看到"\r\n"的字符而不是制造新的行。根据我在网上发现的信息,必须在双引号之间使用您的字符串,如下所示:

echo nl2br("Hello, \r\n This is the description");

现在,$descriptionfrom数据库的值实际上是,"Hello, \r\n This is the description"但是在我的脚本中,我必须像这样使用它:

echo nl2br($description);

哪个不产生br,而是输出\r\n。因此,根据我的经验,我该怎么办,不能在此处使用双引号。


阅读 419

收藏
2020-05-17

共1个答案

一尘不染

可以 在将字符串传递通过之前将它们转换为它们各自的转义序列nl2br(),如下所示:

$description = nl2br(str_replace('\\r\\n', "\r\n", $description));

但是,首先在数据库中进行字面转义是什么?

2020-05-17