我就遇到了这个问题,我自己在一个巨大的代码库。受@sschueller发布的解决方案的启发,我测试了此auto_prepend_file代码,该代码记录了调查发生的事件。此方法还应与解析/标记化一起使用以捕获所有事件。
<?php
$vars = get_defined_vars();
foreach ($vars as $var => $value) {
if (in_array($var, array('$_SERVER', '$_REQUEST', '$_GET', '$_POST', '$_COOKIE', '$_SESSION', '$_FILES', '$_ENV'))) {
// only examine the local symbols, not superglobals
continue;
}
if (array_key_exists($var, $_REQUEST) && $value == $_REQUEST[$var]) {
error_log(sprintf("register_globals reliance detected in %s for variable %s=%s", $_SERVER['SCRIPT_FILENAME'], $var, $value), 3, "/var/tmp/register_globals.log");
}
}
+1不是简单地使用`提取物()`让蹩脚的代码的工作,但实际上将其固定 – ThiefMaster 2011-02-03 18:41:07