PHP之addslashes()函数的用法

在PHP中,很多时候我们需要对写入数据库的特殊字符进行转义,因为每个数据库都有不同的特殊字符,当数据库遇到这些字符的时候,代表着不同的意义,比如MYSQL中的单引号('),若不经转义就写入数据库,很容易导致MYSQL出错。

在PHP中,提供有专门用于转义的内置函数,它就是addslashes(),下面说下具体用法:

语法: string addslashes(string str); //str为含有需转义字符的字符串

假设$content为表单中提交来的文章内容,里面含有'这个字符,因MYSQL对此字符较敏感,所以我们在将$content插入数据之前进行转义,具体代码为:

$content=addslashes($_POST['content']);

这样转义后,$content中的'变成了\',也就是addslashes()函数为其增加了一个反斜扛“\”,这样转义后再存入MYSQL,就不会出错了,当然,加入此字符并不改变原有的$content,当读取出来的时候,内容中并没有“\'”。

在实际应用中,除了单引号 (')需要转义外,双引号 (")、反斜线 backslash (\) 以及空字符 NUL (the null byte)都需要转义,在有些PHP.ini中,若打开了 magic_quotes_gpc指令,那就不需要再使用addslashes()转义了,否则会造成二次转义,因此在使用前,你可确认PHP服务器中是否打开了magic_quotes_gpc指令,若不能确认,你可使用PHP中的 get_magic_quotes_gpc() 函数进行检测。

相关文章

文章浏览阅读8.4k次,点赞8次,收藏7次。SourceCodester Onl...
文章浏览阅读3.4k次,点赞46次,收藏51次。本文为大家介绍在...
文章浏览阅读1.1k次。- php是最优秀, 最原生的模板语言, 替代...
文章浏览阅读1.1k次,点赞18次,收藏15次。整理K8s网络相关笔...
文章浏览阅读1.2k次,点赞22次,收藏19次。此网络模型提供了...
文章浏览阅读1.1k次,点赞14次,收藏19次。当我们谈论网络安...