有什么工具可以分析 PHP 代码的依赖文件

2014-09-03 10:00:17 +08:00
 wudikua
给一个PHP文件,怎么分析他所有代码路径涉及的文件,感觉原理类似于代码导航,就是把这个文件的所有可能的代码导航都遍历出来。
3351 次点击
所在节点    程序员
11 条回复
66beta
2014-09-03 10:04:50 +08:00
IDE都可以的,比如Netbeans
你建立project的时候,它会扫描整个project内的文件,你甚至还可以添加project外部的库
点击某个函数方法,就会打开声明它的文件
f1384793
2014-09-03 10:09:40 +08:00
wudikua
2014-09-03 10:11:43 +08:00
@66beta 我用的PHPSTORM 生成的XML里有?
66beta
2014-09-03 10:14:11 +08:00
@wudikua
https://netbeans.org/images_www/v7/3/features/php/php-ide_top.png
左下角的navigator是不是你要的? 里面会列出本文件用到的方法和变量,点击就会跳到声明出,包括从外面调用的
wudikua
2014-09-03 10:16:57 +08:00
@66beta 我是写程序,要把项目的依赖计算出来,然后公用的代码迁移到一个地方,不是在这种。
mikej
2014-09-03 10:17:32 +08:00
get_included_files() ?
wudikua
2014-09-03 10:25:34 +08:00
@mikej 这个只能在运行时用
shiny
2014-09-03 11:54:51 +08:00
有autoload,不到运行时是不知道到底加载了什么文件的。
RemRain
2014-09-03 13:01:54 +08:00
无解,举个栗子:
$redis = new Redis();
require($redis->get('file_name'));
nina
2014-09-03 18:31:25 +08:00
我能在这招个资深的phper吗?求解
haisee
2014-09-05 17:21:40 +08:00
class My_Exception extends Exception
{
public function __construct($message, $code = null) {
parent::__construct($message, intval($code));
echo $this->getTraceAsString();
}
}
在你需要的地方调用一下threw new My_Exception('balabala...')
然后你可以得到一个php的执行路径,从入口到中断的地方。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/131440

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX