PHP addslashes() 函数
PHP addslashes() 函数返回在预定义的字符前添加反斜杠的字符串
( PHP >= 4 )
函数原型
addslashes( string )
预定义字符是:
- 单引号(')
- 双引号(")
- 反斜杠(\)
- NULL
该函数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串
默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()
不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义
遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测
参数
参数 | 描述 |
---|---|
string | 必需。规定要转义的字符串 |
返回值
已转义的字符串
范例
在每个双引号(")前添加反斜杠
<?php $str = addslashes('What does "yolo" mean?'); echo($str);
运行以上 PHP 范例,输出结果如下
What does \"yolo\" mean?
范例 2
向字符串中的预定义字符添加反斜杠
<?php $str = "Who's Peter Griffin?"; echo $str . " This is not safe in a database query.<br>"; echo addslashes($str) . " This is safe in a database query.";
运行以上 PHP 范例,输出结果如下
Who's Peter Griffin? This is not safe in a database query. Who\'s Peter Griffin? This is safe in a database query.