`
moqiang02
  • 浏览: 529545 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
文章分类
社区版块
存档分类
最新评论

关于get_magic_quotes_gpc()函数(交互数据转义的判断)

 
阅读更多
在PHP中get_magic_quotes_gpc()函数是内置的函数,这个函数的作用就是得到php.ini设置中magic_quotes_gpc选项的值。
那么就先说一下magic_quotes_gpc选项:
如果magic_quotes_gpc=On,PHP解析器就会自动为post、get、cookie过来的数据增加转义字符“\”,以确保这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。
在magic_quotes_gpc=On的情况下,如果输入的数据有单引号(’)、双引号(”)、反斜线(\)与 NUL(NULL 字符)等字符都会被加上反斜线。这些转义是必须的,如果这个选项为off,那么我们就必须调用addslashes这个函数来为字符串增加转义。
正是因为这个选项必须为On,但是又让用户进行配置的矛盾(用户必须在代码中加入magic_quotes_gpc是否开启的判断,如果是off状态,就必须调用addslashes这个函数来为字符串增加转义),在PHP6中删除了这个选项,一切的编程都需要在magic_quotes_gpc=Off下进行了。在这样的环境下如果不对用户的数据进行转义,后果不仅仅是程序错误而已了。同样的会引起数据库被注入攻击的危险。所以从现在开始大家都不要再依赖这个设置为On了,以免有一天你的服务器需要更新到PHP6而导致你的程序不能正常工作。
当magic_quotes_gpc=On的时候,函数get_magic_quotes_gpc()就会返回1
当magic_quotes_gpc=Off的时候,函数get_magic_quotes_gpc()就会返回0
因此可以看出这个get_magic_quotes_gpc()函数的作用就是得到环境变量magic_quotes_gpc的值。既然在PHP6中删除了magic_quotes_gpc这个选项,那么在PHP6中这个函数我想也已经不复存在了。
分享到:
评论

相关推荐

    php中get_magic_quotes_gpc()函数说明

    get_magic_quotes_gpc函数是一个用来判断是否为用户提供的数据增加斜线了,这个在php.ini配置文件中哦,下面我来介绍一下get_magic_quotes_gpc()函数说明. get_magic_quotes_gpc函数介绍 取得 PHP 环境变数 magic_...

    get_magic_quotes函数详解

    get_magic_quget_magic_quotes函数详解oget_magic_quotes函数详解get_magic_quoget_magic_quotes函数详解get_magic_quotes函数详解get_magic_quotes函数详解get_magic_quotes函数详解tes函数详解get_magic_quotes...

    基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍

    本篇文章小编为大家介绍,基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍。需要的朋友参考下

    深入PHP magic quotes的详解

    特地查看了下手册,关于php  magic quotes,常见的几个设置如下,magic_quotes_gpc,magic_quotes_sybase,magic_quote_runtime,这几个函数是在php.ini中去配置的,从手册中可以看出从php5.3后已经废除了这些特性,...

    PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法

    复制代码 代码如下: <?...$magic_quotes_gpc) { $_FILES = daddslashes($_FILES); } daddslashes函数 复制代码 代码如下: //转译字符函数 function daddslashes($string) { if(!is_array($strin

    基于PHP magic_quotes_gpc的使用方法详解

    本篇文章是对PHP中magic_quotes_gpc的使用方法进行了详细的分析介绍,需要的朋友参考下

    php set_magic_quotes_runtime() 函数过时解决方法

    把函数: set_magic_quotes_runtime($new_setting); 替换成: ini_set(“magic_quotes_runtime”, $new_setting);

    php magic_quotes_gpc的一点认识与分析

    blankyao 说“学习的过程就是不断的发现错误,不断的改正错误”; 先看下手册上怎么说的吧! 对一般人来说看下前两段就可以了 Magic Quotes 代码: Magic Quotes is a process ... What are Magic Quotes 代码: When o

    PHP的特殊字符转译函数使用.pdf

    PHP的特殊字符转译函数使用 get_magic_quotes_gpc() long get_magic_quotes_gpc()

    php-magic-quotes-gpc:在PHP 5.4更高版本上为旧版代码实现magic_quotes_gpc

    PHP魔术引号实现在PHP 5.4更高版本上为旧版代码实现magic_quotes_gpc 如果您要将旧版源代码迁移到上述PHP 5.4版的环境中,但是根据Magic Quotes magic_quotes_gpc SQL保护,其中包括许多易受攻击的数据库查询代码。...

    php参数过滤、数据过滤类

    magic_quotes_gpc可以把get,post,cookie里的引号变为斜杠。magic_quotes_runtime对于进出数据库的数据可以起到格式话的作用。其实,早在以前注入很疯狂时,这个参数就很流行了。 3)在使用系统函数时,必须使用...

    PHP 转义使用详解

    php中数据的魔法引用函数 magic_quotes_gpc 或 magic_quotes_runtime  设置为on时,为我们引用的数据碰到 单引号’ 和 双引号” 以及 反斜线\ 时自动加上反斜线,帮我们自动转译符号,确保数据操作的正确运行两者...

    php安全之直接用$获取值而不$_GET 字符转义

    defined(‘MAGIC_QUOTES_GPC’) && define(‘MAGIC_QUOTES_GPC’, get_magic_quotes_gpc()); if(!MAGIC_QUOTES_GPC || $force) { if(is_array($string)) { foreach($string as $key => $val) { $string[$key] = my_...

    PHP 选项及相关信息函数库

     get_magic_quotes_gpc : 取得 PHP 环境变量 magic_quotes_gpc 的值。 get_magic_quotes_runtime : 取得 PHP 环境变量 magic_quotes_runtime 的值。 getlastmod : 返回该网页的最后

    php参数过滤、数据过滤类.zip

    magic_quotes_gpc可以把get,post,cookie里的引号变为斜杠。magic_quotes_runtime对于进出数据库的数据可以起到格式话的作用。其实,早在以前注入很疯狂时,这个参数就很流行了。 3)在使用系统函数时,必须使用...

    PHP知识点汇总

    默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的...遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

Global site tag (gtag.js) - Google Analytics