实际上我正在修改由其他开发人员制作的客户端的旧脚本,他所做的是,他多次包含同一个文件,如config file
,这会导致一些变量覆盖,我只想数一下特定文件包含在完整页面执行中的次数,例如加载配置文件的次数,如果我可以获得包含这些文件的行号和文件名,则会更好。
如果有任何办法可以做到这一点,那将有所帮助。
感谢。
答案 0 :(得分:1)
如果可以的话,最好在包含的文件中完成。在其开头添加一行,例如track_inclusion(__FILE__);
。像这样定义函数:
function track_inclusion($filename=null) {
static $inclusions = array();
if( !$filename) return $inclusions;
if( !isset($inclusions[$filename])) $inclusions[$filename] = array();
$trace = debug_backtrace();
foreach($trace as $t) {
if( !preg_match("/^(?:include|require)(?:_once)?$/i",$t['function'])) continue;
$inclusions[$filename][] = $t;
break;
}
}
然后,一旦完成所有操作,您可以致电track_inclusion()
来检索包含数据并var_dump
将其外观看看 - 一旦您看到它给您的结构,您就可以可以用更有意义的方式呈现它。