解析php addslashes()与addclashes()函数的区别和比较

 更新时间:2013年06月24日 10:17:29   作者:  
本篇文章是对php中的addslashes()与addclashes()函数的区别进行了详细的分析介绍,需要的朋友参考下

PHP addcslashes() 函数
定义和用法
addcslashes() 函数在指定的字符前添加反斜杠。
语法
addcslashes(string,characters)参数 描述
string 必需。规定要检查的字符串。
characters 可选。规定受 addcslashes() 影响的字符或字符范围。
提示和注释
注释:在对 0,r,n 和 t 应用 addcslashes() 时要小心。在 PHP 中,\0,\r,\n 和 \t 是预定义的转义序列。
实例
例子 1
在本例中,我们要向字符串中的特定字符添加反斜杠:
<?php
$str = "Hello, my name is John Adams.";
echo $str;
echo addcslashes($str,'m');
echo addcslashes($str,'J');
?>
输出:
Hello, my name is John Adams.
Hello, \my na\me is John Ada\ms.
Hello, my name is \John Adams.

而函数addslashes()的使用:
PHP addslashes() 函数
定义和用法
addslashes() 函数在指定的预定义字符前添加反斜杠。
这些预定义字符是:
•单引号 (')
•双引号 (")
•反斜杠 (\)
•NULL
语法
addslashes(string)参数 描述
string 必需。规定要检查的字符串。
提示和注释
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串。
注释:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。
例子
在本例中,我们要向字符串中的预定义字符添加反斜杠:
<?php
$str = "Who's John Adams?";
echo $str . " This is not safe in a database query.<br />";
echo addslashes($str) . " This is safe in a database query.";
?>
输出:
Who's John Adams? This is not safe in a database query.
Who\'s John Adams? This is safe in a database query.他们都有对应的去除他们添加的反斜杠的方法,分别是:stripcslashes()和stripslashes()。

相关文章

  • PHP实现简单实用的验证码类

    PHP实现简单实用的验证码类

    这篇文章主要介绍了PHP实现简单实用的验证码类,包含验证码常用的随机验证码、干扰线、图片生成与输出等相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • PHP简单数据库操作类实例【支持增删改查及链式操作】

    PHP简单数据库操作类实例【支持增删改查及链式操作】

    这篇文章主要介绍了PHP简单数据库操作类实例,支持增删改查及链式操作,非常适合小型项目的开发使用,末尾还提供了完整实例的下载地址,需要的朋友可以参考下
    2016-10-10
  • 详解PHP队列的实现

    详解PHP队列的实现

    这篇文章主要介绍了PHP队列的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • php实现在线通讯录功能(附源码)

    php实现在线通讯录功能(附源码)

    这篇文章主要为大家详细介绍了php实现在线通信录功能的具体代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • php curl获取网页内容(IPV6下超时)的解决办法

    php curl获取网页内容(IPV6下超时)的解决办法

    如果开启了IPv6,curl默认会优先解析 IPv6,在对应域名没有 IPv6 的情况下,会等待 IPv6 dns解析失败 timeout 之后才按以前的正常流程去找 IPv4
    2013-07-07
  • php图片的二进制转换实现方法

    php图片的二进制转换实现方法

    这篇文章主要介绍了php图片的二进制转换实现方法,详细介绍了图片与二进制之间转换的原理与实现技巧,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • Zend的AutoLoad机制介绍

    Zend的AutoLoad机制介绍

    在使用zend framework的时候,最先引入的一定是AutoLoad的机制,这里就想分析下Zend的AutoLoad是怎么引入的
    2012-09-09
  • 方便实用的PHP生成静态页面类(非smarty)

    方便实用的PHP生成静态页面类(非smarty)

    不喜欢Smarty,直接写了一个生成静态的类,方便简单实用,希望大家继续完善。
    2008-11-11
  • php计算整个目录大小的方法

    php计算整个目录大小的方法

    这篇文章主要介绍了php计算整个目录大小的方法,涉及php针对目录操作的相关技巧,需要的朋友可以参考下
    2015-06-06
  • PHP 预定义变量、魔术常量和魔术方法功能与用法小结

    PHP 预定义变量、魔术常量和魔术方法功能与用法小结

    这篇文章主要介绍了PHP 预定义变量、魔术常量和魔术方法,总结分析了PHP 预定义变量、魔术常量和魔术方法基本概念、原理、功能、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04

最新评论