Mysqli_real_escape_string是否阻止preg_split工作


Example Text: This will be stored in the $_POST['x'] variable
This is sentence one.
This is sentence two.
This is sentence three.

如果我运行下面的代码,它将返回一个只有一个元素的数组

$x= mysqli_real_escape_string($db, $_POST['x']);
$y= preg_split("/(rn|n|r)/", $x);

但如果我在下面运行这段代码,它将正确地将其拆分为所有3个元素。

$x = $_POST['x'];
$y= preg_split("/(rn|n|r)/", $x);

其他人经历过这种现象吗?为什么会发生这种情况?

http://php.net/mysqli-real-escape-string
编码的字符是NUL(ASCII 0(、\n、\r、\、'、"和Control-Z。

这意味着换行符变为\n(LF(、\r(CR(和\r\n(CRLF(。因此,它们不再与正则表达式匹配。

在未来,RTM;(

相关内容

  • 没有找到相关文章

最新更新