博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
引用函数magic_quotes_gpc和magic_quotes_runtime的区别和用法(新手推荐)
阅读量:2436 次
发布时间:2019-05-10

本文共 2511 字,大约阅读时间需要 8 分钟。

提供两个方便我们引用数据的魔法引用函数magic_quotes_gpcmagic_quotes_runtime,这两个函数如果在php.ini设置为ON的时候,就会为我们引用的数据碰到单引号'双引号"以及反斜线 /
是自动加上反斜线,帮我们自动转译符号,确保数据操作的正确运行,可是我们在php不同的版本或者不同的服务器配置下,有的magic_quotes_gpc和magic_quotes_runtime设置为on,有的又是off,所以我们写的程序必须符合on和off两种情况。那么magic_quotes_gpc和magic_quotes_runtime两个函数有什么区别呢?看下面的说明:PHPChina 开源社区门户!H |~wrs
PHPChina 开源社区门户e)^2@$XnZ{6dt
magic_quotes_gpc
uW+ft7sZ&^s0h0作用范围是:WEB客户服务端;
R!xcgyq ?8qu0作用时间:请求开始是,例如当脚本运行时.
,hC$HKq_0PHPChina 开源社区门户 J0c{z/X.b
/*Y`zu+l.^0
magic_quotes_runtimePHPChina 开源社区门户o^3m0o bg.CV
作用范围:从文件中读取的数据或执行exec()的结果或是从SQL查询中得到的;PHPChina 开源社区门户"Pcq _/}(uXOR
作用时间:每次当脚本访问运行状态中产生的数据.
PHPChina 开源社区门户vP1vh1SG
所以
#S!y./ S/F,M"l0
!b~7h,`'P{Lz0
magic_quotes_gpc的设定值将会影响通过Get/Post/Cookies获得的数据
)V!q6F1a)n0magic_quotes_runtime的设定值将会影响从文件中读取的数据或从查询得到的数据
PHPChina 开源社区门户9u5K9/_e
例子说明:PHPChina 开源社区门户+`0J3kX@ K:W5r!Ajt
PHPChina 开源社区门户;Qv dH.V-mL
$data1 = $_POST['aaa'];
l!Rz ])/$R'F0$data2 = implode(file('1.txt'));
q:AW0v m:X7ctR0if(get_magic_quotes_gpc()){
Y;R&s3] M)o(u8u0      //把数据$data1直接写入数据库 (自动转译)PHPChina 开源社区门户W.J ]^0{Iu
}else{
PHPChina 开源社区门户FSO)`P
      $data1 = addslashes($data1);PHPChina 开源社区门户q.SxKhN{f5C9y0j)o
      //把数据$data1写入数据库,用函数(addslashes()转译)
'lL z1wX9i }0}PHPChina 开源社区门户u/0N?NYP9E
PHPChina 开源社区门户kH%c `@:B
if(get_magic_quotes_runtime()){
)l'u2arH gJs0      //把数据$data2直接写入数据库
(自动转译)
-k7Y'O-Gg:l2JA8e0PHPChina 开源社区门户#n;VR"j}!G ]
//从数据库读出的数据要经过一次stripslashes()之后输出
stripslashes()的作用是去掉:/ ,和addslashes()作用相反
PHPChina 开源社区门户1o%i#A}m8[p
}else{
PHPChina 开源社区门户+^:HB0VY'SY
      $data2 = addslashes($data2);PHPChina 开源社区门户"~K.K:T:M
      //把数据$data2写入数据库PHPChina 开源社区门户}%kl&P f"eVh.F[`
PHPChina 开源社区门户-S4Aw{Q)tw&t
//从数据库读出的数据直接输出PHPChina 开源社区门户%R9/*t/R J `
}
Z:h%c-i A HEK/0PHPChina 开源社区门户tC H9P IHHD
最关键的区别是
就是上面提到的2点:他们针对的处理 不同
PHPChina 开源社区门户1K(U S9f5tGMbq4b
magic_quotes_gpc的设定值将会影响通过Get/Post/Cookies获得的数据PHPChina 开源社区门户^ F#j!C.WQE
magic_quotes_runtime的设定值将会影响从文件中读取的数据或从数据库查询得到的数据PHPChina 开源社区门户J)t ]GF[9i$|
8Q'{.uiVg!J p0在这里顺便在提几个想关联的函数:
/J,v!E*j.o4/T"}l$^2d?0
;Y[,` C7?0f9};y0set_magic_quotes_runtime():PHPChina 开源社区门户zBs4B}
设置
magic_quotes_runtime值.
0=关闭.1=打开.默认状态是关闭的.可以通过 echo phpinfo(); 查看magic_quotes_runtimePHPChina 开源社区门户%K Z9R"Ng~,TC
t/RBg.R wBa,w0
get_magic_quotes_gpc():
PHPChina 开源社区门户 J_E"sV%}-Bh:L
查看
magic_quotes_gpc值.
0=关闭.1=打开.
q E*@&OJ2L;b#m"/g0
M"pL&[ `Z ed0
get_magic_quotes_runtime():PHPChina 开源社区门户'q |4@tsFWX4j3y
查看
magic_quotes_runtime值。
0=关闭.1=打开.PHPChina 开源社区门户 D/1/iw2w.i*Sq
_hygf${ix0注意的是没有 set_magic_quotes_gpc()这个函数,就是不能在程序里面设置magic_quotes_gpc的值。
E wc^a&g WJ~0

转载地址:http://nummb.baihongyu.com/

你可能感兴趣的文章
## EL表达式与JSTL标签用法解读
查看>>
Mybatis异常:The content of elements must consist of well-formed.......(一般出现在写分页/带大于小于号的SQL)
查看>>
Mybatis光速入门(配置文件模块)
查看>>
关于Oracle的主键自增如何设置
查看>>
手撕HashMap的resize()方法源码渗透解析+图解
查看>>
Mybatis常见异常类型Could not set parameters for mapping离不开这个原因!
查看>>
Thymeleaf中一个页面怎么嵌套另一个页面,关于页面嵌套,标签告诉你应该知道的
查看>>
JAVA如何实现短信验证码--阿里云接口,新手式图文教学,个人项目有这一篇就够了
查看>>
Java中大小数BigDecimal的加减乘除用法及场景的详细介绍,看完不信你还会报Syntax error on token “+/-/*“, invalid AssignmentOperat异常
查看>>
UVa 10917 Dijkstra
查看>>
CF403B/CF402D
查看>>
CF402E / 403C
查看>>
cf404b
查看>>
cf404c
查看>>
cf404d
查看>>
武大网络预赛 Problem 1545 - I - Twenty-four
查看>>
ZOJ Problem Set - 3768 Continuous Login
查看>>
某山面试 3、实现如下函数:
查看>>
malloc的小知识
查看>>
UVALive 6755 - Swyper Keyboard
查看>>