> 백엔드 개발 > PHP 튜토리얼 > 这句话怎么理解

这句话怎么理解

WBOY
풀어 주다: 2016-06-23 13:35:11
원래의
1264명이 탐색했습니다.

if (ini_get('magic_quotes_gpc'))

还有下面这段
if (ini_get('magic_quotes_gpc')) {
function stripslashesRecursive(array $array){
foreach ($array as $k => $v) {
if (is_string($v)){
$array[$k] = stripslashes($v);
} else if (is_array($v)){
$array[$k] = stripslashesRecursive($v);
}
}
return $array;
}


回复讨论(解决方案)

(ini_get('magic_quotes_gpc'))    //获取一个配置选项的值 

下面的函数是把一个多维数组里的字符串递归地用addslashes()转义,也就是把数组里的所有的字符串用addslashes函数处理

1. 对于PHP magic_quotes_gpc= on的情况, 我们可以不对输入和输出数据库的字符串数据作addslashes()和stripslashes()的操作,数据也会正常显示。
如果此时你对输入的数据作了addslashes()处理,那么在输出的时候就必须使用stripslashes()去掉多余的反斜杠。

2. 对于PHP magic_quotes_gpc= off 的情况
必须使用addslashes()对输入数据进行处理,但并不需要使用stripslashes()格式化输出,因为addslashes()并未将反斜杠一起写入数据库,只是帮助mysql完成了sql语句的执行。

参考: http://developer.51cto.com/art/200911/165392.htm

(ini_get('magic_quotes_gpc'))    //获取一个配置选项的值 

下面的函数是把一个多维数组里的字符串递归地用addslashes()转义,也就是把数组里的所有的字符串用addslashes函数处理


讲的很透,希望再接再厉
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿