2010-04-27 7 views
9

큰 PHP 프로그램에서 작업을 끝내고 PHP 응용 프로그램의 흐름 제어/호출 그래프를 그리는 프로그램 (또는 스크립트 설치가 필요)이 필요합니다. (즉, 여러 PHP 파일을 처리해야합니다). 이미 Graphviz와 같은 것을 보았습니다. 어느 것이 PHP에서 작동하는지 확실하지 않습니까?PHP 응용 프로그램 흐름 그래프 (또는 함수 호출 그래프)

제안 사항?

건배!

답변

9

나는 정적으로 (즉 소스 파일에서)을 할 수있는 도구를 사용한 적이 없지만 스크립트/응용 프로그램을 실행할 때 콜 그래프를 얻을 수있는 방법이 있습니다. 먼저


, 당신은 Xdebug extension를 설치해야 - 개발/테스트 서버 (프로덕션 서버에 설치하지 마십시오가 공연을 위해 매우 나쁜 ^^)에

그런 다음, profiling features을 사용하여 페이지로드 실행에 해당하는 .cachegrindout 파일을 생성 할 수 있습니다.


는 그 후, 당신은 (리눅스에 - 나는 윈도우 버전이 생각하지 않습니다) KCacheGrind와 그 .cachegrindout 파일을로드 할 수 있습니다이; KCacheGrind는 .cachegrindout 파일에서 콜 그래프를 생성 할 수 있습니다.

그리고 여기가 당신이 얻을 수있는 콜 그래프의 예 :

KCacheGrind : Callgraph exported as an image http://extern.pascal-martin.fr/so/kcachegrind/kcachegrind-2-small.png

(여기,이 Dotclear, 블로깅 소프트웨어의 페이지를로드하는 동안 얻은 .cachegrindout 파일에서 생성 된 것)

+0

깔끔한 !! 테스트 PHP 서버를 사용하여 내 리눅스 VM에서 가정에서이를 시도 할 수 있습니다. 감사합니다. – Christian

+0

당신을 환영합니다 :-) 재미있게 보내세요! –

2

Doxygen은 정적으로 처리 할 수 ​​있습니다. doxygen -d를 사용하여 설정 파일을 만든 다음 편집하여 callgraph를 만듭니다.

관련 문제