首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP -魔术引号gpc和stripslashes问题

PHP -魔术引号gpc和stripslashes问题
EN

Stack Overflow用户
提问于 2010-11-30 23:32:19
回答 3查看 3.4K关注 0票数 2

好的,我的托管公司已经把magic_quotes_gpc变成了ON,我用stripslashes()编写了我的PHP脚本。但是现在托管公司说它将关闭magic_quotes_gpc,我想知道现在当stripslashes()存在的时候我的数据会发生什么,我应该检查我的数百万行代码并摆脱stripslashes()吗?或者不去管stripslashes()函数?离开stripslashes()会破坏我的数据吗?

EN

回答 3

Stack Overflow用户

发布于 2010-11-30 23:36:21

您的代码应该使用get_magic_quotes_gpc来查看是否启用了魔术引号,如果启用了,则只使用带斜杠。您应该在所有脚本共享的一个位置运行与以下代码块类似的代码块;如果您在多个位置使用stripslashes,那么您这样做是错误的。

代码语言:javascript
复制
// recursively strip slashes from an array
function stripslashes_r($array) {
  foreach ($array as $key => $value) {
    $array[$key] = is_array($value) ?
      stripslashes_r($value) :
      stripslashes($value);
  }
  return $array;
}

if (get_magic_quotes_gpc()) {
  $_GET     = stripslashes_r($_GET);
  $_POST    = stripslashes_r($_POST);
  $_COOKIE  = stripslashes_r($_COOKIE)
  $_REQUEST = stripslashes_r($_REQUEST);
}
票数 9
EN

Stack Overflow用户

发布于 2010-11-30 23:35:13

我会开始检查并删除stripslashes()。您可以通过测试magic_quotes_gpc并仅在需要时调用stripslahes()来提前完成此操作。

票数 1
EN

Stack Overflow用户

发布于 2010-11-30 23:43:16

meagar有正确的答案。

但是要遍历这种情况,您需要具有文件内搜索功能的Notepad++之类的工具。复制meagar的代码片段并搜索stripslashes()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4315406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档