什么是NUL或NULL字节以及转义如何与NULL字节一起工作?
有人可以举个例子吗?
单引号和双引号非常明显,但我不清楚NULL字节。
来自PHP.net的文档。
addslashes()在需要在数据库查询中引用的字符之前返回带反斜杠的字符串。这些字符是单引号('),双引号(“),反斜杠()和NUL(NULL字节)。< / p>
我试过这样的事情:
$a = NULL;
$str = " NULL example $a ";
echo addslashes($str);
但我没有看到输出中添加任何斜杠。
答案 0 :(得分:4)
NULL
包含在这样的字符串中:
$string = "This is a NULL character: \x00";
答案 1 :(得分:-2)
addslashes没有任何有用的功能,是对旧时代的回归。你永远不应该永远不要把它用于任何事情。永远。如果你需要在数据库中转义存储输入,那么使用正确的转义函数(PDO转义,mysql_real_escape_string,pg_escape_string等)