如果我们正在处理一个大型代码库,其中可以在许多不同的文件中引用全局变量:
ctags
跳转到声明会转到本地语句,其中全局被置于当前文件的范围内global $foo
或grep
搜索ack
会产生一个文件列表,其中全局变为范围,但不是全局变量的确切声明是否有任何工具/ vim插件/等可以告诉您第一次宣布全局的确切位置?
更新:我猜您可以设置一个监视断点并查找对该变量的第一次访问。不幸的是,Xdebug尚不支持这种类型的断点,因此对于我的特定设置,它不起作用。
答案 0 :(得分:3)
您是基于Unix的操作系统吗?
我通常做grep -rn 'global $myvar' .
在顶级目录中。这会对当前目录中的文件进行递归搜索以进行声明。
或者,如果你想获得幻想,你只能搜索PHP文件:
grep -rn --include '*.php' 'global $myvar' .