Javascript 检测用户使用php输入的换行符、制表符和其他特殊字符

Javascript 检测用户使用php输入的换行符、制表符和其他特殊字符,javascript,php,special-characters,newline,control-characters,Javascript,Php,Special Characters,Newline,Control Characters,我有一些函数,需要用户提供一些参数 参数主要是字符。我遇到的问题是,在PHP中,通过键入“\n”和“\t”来创建换行符和制表符非常容易 我希望用户能够进行相同的输入。(为换行符键入“\n…” 我遇到的问题是,如果我有这样的代码: $character1 = "\n"; $character2 = $_POST["line_break"]; // the user input is "\n" var_dump($character1); var_dump($character2); strin

我有一些函数,需要用户提供一些参数

参数主要是字符。我遇到的问题是,在PHP中,通过键入
“\n”
“\t”
来创建换行符和制表符非常容易

我希望用户能够进行相同的输入。(为换行符键入“\n…”

我遇到的问题是,如果我有这样的代码:

$character1 = "\n";
$character2 = $_POST["line_break"]; // the user input is "\n"

var_dump($character1);
var_dump($character2);
string(1) "
"
string(2) "\n"
if ($character2 == "\\n") $character2 = "\n";
elseif ($character2 == "\\t") $character2 = "\t";
elseif ...
输出如下所示:

$character1 = "\n";
$character2 = $_POST["line_break"]; // the user input is "\n"

var_dump($character1);
var_dump($character2);
string(1) "
"
string(2) "\n"
if ($character2 == "\\n") $character2 = "\n";
elseif ($character2 == "\\t") $character2 = "\t";
elseif ...
第一个是我想要的

我能想到的唯一解决方案是检查字符是否存在所有可能的输入,并将其替换为以下内容:

$character1 = "\n";
$character2 = $_POST["line_break"]; // the user input is "\n"

var_dump($character1);
var_dump($character2);
string(1) "
"
string(2) "\n"
if ($character2 == "\\n") $character2 = "\n";
elseif ($character2 == "\\t") $character2 = "\t";
elseif ...
这似乎是一个相当肮脏的解决方案。 有没有其他更简单更干净的方法来达到我想要的效果


如果这是唯一的方法,那么该解决方案也可以是JavaScript解决方案,因为用户界面无论如何都会处理Ajax请求。

您可以使用:

请注意,由于我们返回的是取自
$\u请求[“line\u break”]
的报价值,因此可以避免使用
eval
的一些明显风险