我遇到了一个问题,用户可以提交带有‘“和空值的数据。我认为addslashes()可以工作,但只是想知道它对空值做了什么?
示例:
User enters data like: Company Name: ABC's
User can skip fields as well: Company URL: 我想知道如果addslashes()将字段保留为空,它们将添加什么。我想我的问题是addslashes()如何处理空格?是否为空?
发布于 2010-03-06 03:32:46
好吧,如果这个空值真的是一个空值(=一个完全空值),那么我假设它在PHP中就是null。表示“null”值将使用反斜杠进行转义:
返回一个字符串,在数据库查询等需要引用的字符前面有反斜杠。这些字符是单引号(')、双引号(")、反斜杠()和NUL (空字节)。
但是当我使用以下命令测试时
print_r(addslashes(null));我得到一个完全空的结果(=null,没有反斜杠)。
发布于 2010-03-06 22:44:40
提供的答案是准确的。需要考虑的一件事是,如果您专门寻找null值。虽然addslashes()不会影响空值字段,但它也不会将“空白”更改为空值。您可能已经考虑到了这一点,但是提前修剪()值可能会很有用。
$new_value =加斜杠(trim($value));
这将删除"empty“字段中的所有空格或空格,因此它实际上将返回空值。
https://stackoverflow.com/questions/2389387
复制相似问题