我无法找到任何便宜的工具来记录PHP脚本中的所有变量/ consts / functs / classes / includes,所以我正在编写自己的。 (我使用了很多需要修改的开源脚本。另外,为我自己的项目创建一个目录会很好。)
我已经使用php字符串函数,查找所有常量,然后遍历脚本的每一行,在数组中加载行号,然后包含/要求,然后是变量等,将其中的一个混合在一起。我想要的90%。但是,如果我要改进它,我可能会改变逐字符处理脚本的方法,就像php编译器可能做的那样。谁有更好的想法如何解决这个问题?我不敢相信我必须发明这个轮子......
我认为有编程环境内置了这个功能,但我老了,预算很低。而且,是的,OO和紧密函数消除了记录大多数变量的需要,但是仍然需要查看include / require树,文档全局变量,查看类的所有实例的使用位置以及如何使用等等。
答案 0 :(得分:2)
答案 1 :(得分:0)
看起来我最好的办法就是在php中使用内置的Tokenizer(http://php.net/manual/en/ref.tokenizer.php)。
$theTokens = token_get_all(file_get_contents($currentFile)) ;
echo '<table>' ;
for ($i=0;$i<count($theTokens); $i++)
{
if (count($theTokens[$i])==3)
{
echo '<tr><td>'.token_name($theTokens[$i][0]).'</td><td>'.$theTokens[$i][1].'</td><td>'.$theTokens[$i][2].'</td><tr>' ;
}
}
echo '</table>' ;
这个ids变量,但需要处理以识别数组,类ID等。