首頁 > 後端開發 > php教程 > 这句话怎么理解

这句话怎么理解

WBOY
發布: 2016-06-23 13:35:11
原創
1266 人瀏覽過

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
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板