使用 str_replace 删除反斜杠

Removing backslash with str_replace

所以我正在尝试删除反斜杠(如示例中那样存储在数据库中 - 进展如何)。

我想做的是删除反斜杠并保留换行符和空格。

我知道这可以解决问题:

str_replace('\', '', $string); 

但问题是我还有另外两个表达式,所以现在我有:

str_replace('\r\n', "\r\n", $string);

在不干扰换行的情况下,如何以及在何处放入第二个示例中的“\\”、“”?

我只是尝试了 str_replace('\r\n\', "\r\n ', $string) 等等,但我无法在不弄乱换行符的情况下让它工作。

谁能帮帮我?

编辑:

我现在要输出的数据是:

echo nl2br(str_replace('\r\n', "\r\n", $string));

显示数据库中存储的字符串,How\'s it going?\r\n\r\nROW 3 as:

How\'s it going?

ROW 3

在段落标记中。

所以我想要的是保持换行完好无损。 Stripslashes 删除换行符并将输出放在一行中。

存储数据时,我使用了这个清理函数:

function clean($mysqli, $var) {
    $var = strip_tags($var);
    $var = htmlentities($var);
    $var = stripslashes($var);
    return $mysqli->real_escape_string($var);
}

我可以调整什么以保留换行符并删除 It's, what's, how's 等词中的单个反斜杠

编辑:已解决

只需使用stripslashes函数

http://php.net/manual/en/function.stripslashes.php

我不知道这是否被认为是一种好的做法,但我所做的是:

$output = nl2br(str_replace('\r\n', "\r\n", $string));
echo str_replace('\', "", $output);