博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
set_magic_quotes_runtime
阅读量:7049 次
发布时间:2019-06-28

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

在php的配置文件中,有个布尔值的设置,就是magic_quotes_runtime,当它打开时,php的大部分函数自动的给从外部引入的(包括数据库或者文件)数据中的溢出字符加上反斜线。

 

 当然如果重复给溢出字符加反斜线,那么字符串中就会有多个反斜线,所以这时就要用set_magic_quotes_runtime()与get_magic_quotes_runtime()设置和检测php.ini文件中magic_quotes_runtime状态。

 

 为了使自己的程序不管服务器是什么设置都能正常执行。可以在程序开始用get_magic_quotes_runtime检测该设置的状态决定是否要手工处理,或者在开始(或不需要自动转义的时候)用set_magic_quotes_runtime(0)关掉该设置。magic_quotes_gpc设置是否自动为GPC(get,post,cookie)传来的数据中的\'\"\\加上反斜线。

 

可以用get_magic_quotes_gpc()检测系统设置。如果没有打开这项设置,可以使用addslashes()函数添加,它的功能就是给数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(\')、双引号(\")、反斜线(\\)与 NUL(NULL 字符)。

一般用法如下;

if(!get_magic_quotes_gpc())
{
    addslashes($prot);
}

 

 

set_magic_quotes_runtime 用来设置php.ini文件中的magic_quotes_runtime值,当遇到反斜杆(\)、单引号(')、双引号(")这样一些的字符定入到数据库里,又不想被过滤掉,使用这个函数,将会自动加上一个反斜杆(\),保护系统和数据库的安全。
magic_quotes_runtime 是php.ini里的环境配置变量,0和false表示关闭本功能,1和true表示打开本功能。当magic_quotes_runtime打开时,所有外部引入的数据库资料或者文件等都会自动转为含有反斜线溢出的资料,
设置方法如下:

1、可以直接在php.ini里面设置为ON

2、set_magic_quotes_runtime(true)或者set_magic_quotes_runtime(1)

3、用ini_set函数,ini_set(magic_quotes_runtime,1);

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

你可能感兴趣的文章
FTP 小结
查看>>
Ubuntu系统清理软件Stacer最新发布
查看>>
Linux 系统调用的初学技巧
查看>>
爆:Oracle Responsys本地文件包含漏洞!
查看>>
全屋WiFi彻底无死角 这才是终极解决方案
查看>>
linux基础,用户和组管理,usermod,mkpasswd
查看>>
Redis概述
查看>>
ContextLoaderListener初始化
查看>>
IntelliJ IDEA使用技巧——缓存和索引介绍及清理方法
查看>>
python 利用Beautifulsoup爬取笑话网站
查看>>
struts项目helloworld中报错问题
查看>>
2017-5-5工作心得
查看>>
python安装scrapy/Twisted遇见的坑
查看>>
时尚的不仅仅是它们的服装,还有它们的网站设计
查看>>
redisCacheManager
查看>>
从程序猿到SAP产品经理,我是如何转型的?
查看>>
称霸Kaggle的十大深度学习技巧
查看>>
073- 编译升级openssl
查看>>
SQL性能优化
查看>>
Zabbix详解 转载
查看>>