php函数addslashes()使用方法详解
实例
在每个双引号(")前添加反斜杠:
<?php $str = addslashes('Shanghai is the "biggest" city in China.'); echo($str); ?>
运行实例:
Shanghai is the \"biggest\" city in China.
定义和用法
addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。
预定义字符是:
- 单引号(')
- 双引号(")
- 反斜杠(\)
- NULL
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。
注释:默认地,PHP 对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。
说明
$str
)返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL
字符)。
一个使用 addslashes() 的例子是当你要往数据库中输入数据时。 例如,将名字 O'reilly 插入到数据库中,这就需要对其进行转义。 强烈建议使用 DBMS 指定的转义函数 (比如 MySQL 是 mysqli_real_escape_string(),PostgreSQL 是 pg_escape_string()),但是如果你使用的 DBMS 没有一个转义函数,并且使用 \ 来转义特殊字符,你可以使用这个函数。 仅仅是为了获取插入数据库的数据,额外的 \ 并不会插入。 当 PHP 指令 magic_quotes_sybase 被设置成 on 时,意味着插入 ' 时将使用 ' 进行转义。
PHP 5.4 之前 PHP 指令 magic_quotes_gpc 默认是 on, 实际上所有的 GET、POST 和 COOKIE 数据都用被 addslashes() 了。 不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。 遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。
参见
- stripcslashes() - 反引用一个使用 addcslashes 转义的字符串
- stripslashes() - 反引用一个引用字符串
- addcslashes() - 以 C 语言风格使用反斜线转义字符串中的字符
- htmlspecialchars() - 将特殊字符转换为 HTML 实体
- quotemeta() - 转义元字符集
- get_magic_quotes_gpc() - 获取当前 magic_quotes_gpc 的配置选项设置
相关文章
- Php.ini 文件位置在哪里,怎么找到 php.ini
- Which is better, ASP.NET, Java or PHP?
- php之快速入门学习-17(PHP 命名空间)
- php中可以使用取绝对值函数 abs() 将负数转成正数
- php 查找 session 存储文件位置的方法
- PHP简单读取pdf文件总页数的方法
- php 删除目录文件夹的方法
- laravel使用firebase/php-jwt token验证
- PHP 之 FastCGI 与 mod_php 详解
- PHP 使用分页方法修改多数据字段
- PHP 实现数学问题:组合
- OSX系统的sublime配置php执行编译
- Tideways和xhgui打造PHP非侵入式监控平台
- [转]PHP开发中涉及到emoji表情的三种处理方法
- 基于PHP和JS的AES相互加密解密方法详解
- PHP--关于模板的原理和解析(php模板原理)
- PHP is_callable 方法
- php中的list()用法中要注意的地方
- PHP数组实际占用内存大小的分析
- php银联网页支付实现方法
- php魔术方法__tostring的应用
- PHP防止SQL注入与几种正则表达式讲解
- PHP中的SESSION
- PHP PHPStorm 解决运行报错 502 Bad Gateway,配置PHP Interpreter,配置php.exe
- linux(centos)下安装PHP的PDO扩展
- php删除文件或文件夹