2010-04-27 18 views
9

Büyük bir PHP programı üzerinde çalışmayı bitirdiğim ve bir PHP uygulamasının akış denetimi/çağrı grafiğini çizen bir programa (veya komut dosyasını yüklemek kolay) ihtiyacım olduğuna inanıyor (yani; birden fazla PHP dosyası üzerinde çalışmalıdır). Zaten Graphviz gibi şeyler gördün, PHP için hangisinin çalıştığından emin değil misiniz?PHP Uygulama Akış Grafiği (veya işlev çağrısı grafiği)

Herhangi bir öneriniz var mı?

Şerefe!

cevap

9

Bu statik olarak (diğer bir deyişle kaynak dosyalarından) yapabilecek hiçbir araç kullanmadım, ancak burada bir komut dosyası/uygulama yürütülürken bir arama grafiği almanın bir yolu. İlk


, sen Xdebug extension yüklemeniz gerekir - bir gelişme/test sunucusuna (bir üretim sunucusuna yüklemeniz yok: bu performanslar için oldukça kötü ^^) üzerinde

Sonra Bir sayfa yükünün yürütülmesine karşılık gelen bir .cachegrindout dosyası oluşturmak için profiling features dosyasını kullanabilir.


Bundan sonra, (linux Açık - Bir pencere versiyonu var sanmıyorum) KCacheGrindo .cachegrindout dosyasını yükleyebilirsiniz; KCacheGrind, .cachegrindout dosyalarından grafikler üretebilir.

Ve burada alabilirsiniz callgraph bir örnek:

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

(İşte, bu Dotclear, bir blog yazılımı bir sayfa yüklenirken alınan bir .cachegrindout dosyadan oluşturulan oldu)

+0

Temiz! Bunu bir test PHP sunucusuyla linux VM'de evde deneyebilirim. Teşekkürler bir demet! – Christian

+0

Rica ederim :-) İyi eğlenceler! –

2

Doxygen statik olarak yapabilir. Sadece bir config dosyası oluşturmak için doxygen -d, daha sonra callgraphs oluşturmak için düzenleyin.