好的,我的托管公司已经magic_quotes_gpc
开启了ON
并且我使用stripslashes()
编写了我的PHP 脚本来准备这个。但是现在托管公司说它会关闭 magic_quotes_gpc
我想知道当 stripslashes()
出现时我的数据现在会发生什么数百万行代码并摆脱 stripslashes()
?或者单独保留 stripslashes()
函数?离开 stripslashes()
会破坏我的数据吗?
最佳答案
您的代码应使用 get_magic_quotes_gpc
查看是否启用了魔术引号,如果启用,则只去除斜线。您应该在一个地方运行类似于以下的代码块,由所有脚本共享;如果您在多个地方使用 stripslashes
,那您就错了。
// 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);
}
关于PHP - 魔法引用 gpc 和 stripslashes 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4315406/