-1

我找不到任何便宜的工具来记录 PHP 脚本中的所有 vars/consts/functs/classes/includes,所以我正在编写自己的。(我使用了很多需要修改的开源脚本。另外,我自己的项目有一个目录会很好。)

我已经使用 php 字符串函数将一个组合在一起,找到所有常量,然后遍历脚本的每一行,将行号加载到数组中,然后是包含/要求,然后是变量等。这得到了大约 90%我想要的是。但是,如果我要改进它,我可能会改变处理脚本字符的方法,就像 php 编译器可能所做的那样。任何人都有更好的想法如何解决这个问题?我不敢相信我必须发明这个轮子......

我想有些编程环境内置了这个功能,但我是老派,预算很低。而且,是的,OO 和紧凑的函数消除了记录大多数 var 的需要,但仍然需要查看 include/require 树、记录全局变量、查看类的所有实例的使用位置以及如何使用等等。

4

1 回答 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 等。

于 2014-11-25T16:56:03.237 回答