Maison  >  Article  >  développement back-end  >  有一个php项目源码,如何搞清楚执行过程?画出其流程图

有一个php项目源码,如何搞清楚执行过程?画出其流程图

WBOY
WBOYoriginal
2016-06-06 20:21:291497parcourir

比如一个c项目,可以让其运行起来,然后利用gdb调试,一步步执行,搞清楚其执行过程,那么一个php项目,如何才能搞清楚执行过程呢,或者需要什么专业的工具

回复内容:

比如一个c项目,可以让其运行起来,然后利用gdb调试,一步步执行,搞清楚其执行过程,那么一个php项目,如何才能搞清楚执行过程呢,或者需要什么专业的工具

如果你想调试的话,可以使用zend studio 或者phpstrom 都是很好的工具

安装 xdebug

然后自己配置:

<code>; 输出文件路径
xdebug.trace_output_dir="/tmp"
; 输出文件名
xdebug.trace_output_name=trace.%H.%t

; 记录添加到文件中方式:1 = 追加(如果存在该文件). 0 (default) = 覆盖(如果存在该文件)
xdebug.trace_options=0
; trace 数据格式
; 0   shows a human readable indented trace file
; 1   writes a computer readable format which has two different records
; 2   writes a trace formatted in (simple) HTML
xdebug.trace_format=0

; 显示数据
; 0 = 不显示.
; 1 = 参数类型,值  (例如:array(9)).
; 2 = 同上1,只是在CLI模式下略微有区别
; 3 = 所有变量内容(受到 xdebug.var_display_max_children,xdebug.var_display_max_data 和xdebug.var_display_max_depth限制)
; 4 = 所有变量内容和变量名(例如:array(0 => 9)).
xdebug.collect_params=0
; 是否收集函数返回值
xdebug.collect_return=0

; 关闭自动追踪,使用 XDEBUG_TRACE GET/POST 触发追踪, 或者通过设置cookie XDEBUG_TRACE
xdebug.auto_trace=0
xdebug.trace_enable_trigger=1</code>

这样访问你的应用,带上特殊的参数就可以得到 trace 文件了,比如:you.app/?XDEBUG_TRACE

然后安装这个 vim 扩展https://github.com/xdebug/xdebug.org/blob/master/html/files/xt.vim

用 vim 打开 trace 文件,跟着执行流程往下看就行了。

xhprof

Zend Studio 就可以设断点来跟踪代码

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn