好的,这就是我遇到的问题。在我们的一些生产系统上,我们启用了魔术引号 gpc。我对此无能为力。所以,我建立了我的请求数据处理类来补偿:
protected static function clean($var)
{
if (get_magic_quotes_gpc()) {
if (is_array($var)) {
foreach ($var as $k => $v) {
$var[$k] = self::clean($v);
}
} else {
$var = stripslashes($var);
}
}
return $var;
}
我用这种方法做了一些其他的事情,但这不是问题。
因此,我目前正在尝试为该方法编写一组单元测试,但我遇到了障碍。我如何测试两个执行路径的结果get_magic_quotes_gpc()
?我无法在运行时为此修改 ini 设置(因为它已经加载)...我尝试搜索 PHPUnit 文档,但找不到与此类问题相关的任何内容。有什么我在这里想念的吗?还是我必须忍受无法测试所有可能的代码执行路径?
谢谢