
首先说明下magic-quote在PHP5.4版本中就已经废除了。详情请参考:https://www.php.net/manual/zh/info.configuration.php
1. magic_quotes_gpc和magic_quotes_runtime作用magic_quotes_gpc主要是作用是自动转义GET/POST/COOKIES请求的数据,也就是自动执行 addslashes()。magic_quotes_gpc在5.4版本之前的配置中有两个值,分别是0(关闭)和1(开启),默认配置是1(开启)。
magic_quotes_runtime主要作用是自动转移sql,为了防止恶意攻击获取数据库信息。magic_quotes_runtime在5.4版本前的配置也有两个值,分别是0(关闭)和1(开启),默认配置是0(关闭)。
2. magic_quotes_gpc和magic_quotes_runtime的应用假设提交过来的数据分别是$datastr= 'aaa' $datafile= implode(file('demo.txt'))第一个数据是一个字符串,第二个是读取的文件信息,但是你不知道是否安全。就可以使用get_magic_quotes_gpc()和get_magic_quotes_runtime()进行判断。
应用示例
注意:一般来说为了运行效率会将get_magic_quotes_gpc()和get_magic_quotes_runtime()设置成常量进行判断
应用示例
主要是防止一些符号歧义造成数据错误。如你要保存一个词don't。如果你的sql语句用单引号引的话就变成'don't',这时t'就没有意义了,会认为是一个错误语句。另一个原因是为了防止sql注入攻击用的
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)