Herhangi bir PHP kodu görselleştirme araçları var mı?

3 Cevap php

(Yani wordpress tamamını veya tematik tema) php kod analiz ve bana güzel resimler gösterecektir yazılımı arıyor (belki de bir block diagram) Bana daha hızlı şeyler nerede bir anlayış almak için tüm bağlantıların ve ne bağlı buydu.

İdeal olarak, bu yazılım Mac üzerinde çalışır, ama ben bir şey alacağım: Windows, Linux, web tabanlı, vb

3 Cevap

Belki http://phpcallgraph.sourceforge.net/ statik analizi için.

Bu çeşitli biçimlerde çıktı yapabilirsiniz.

BOUML mevcut PHP kod üzerinden UML diyagramları yapabilirsiniz

Burada PHP sınıf mirası grafiğini için basit bir yoludur.

Sınıf tanımları ve sonra DOT sözdizimi grep Çıktı dönüşümü için grep. NOT: Bu işlem sizin durumunuzda deneme yanılma gerektirir OLACAKTIR. Ayrı grep çalıştırın ve komut koymadan önce doğru sınıf tanımı satırları göstermek için çimdik!

Bu script graphviz yüklü, (Ben Ubuntu kullanılan) standart * nix üzerinde PHP için oldu, ve ben bir CakePHP kod temeli bakıyordu çünkü hiç ilgi vardı bazı dizinleri dışlamak için grep-v kullanarak. FDP bu durumda sfdp, nokta, circo daha iyi veya daha neato çalıştı.

GenerateClassHierarchy.sh Oluştur

#!/bin/bash
echo 'digraph code {' > code.dot;
grep -r "^class " * | grep -v "^app/vendors" | grep -v "^cake/" | grep -v "Binary file" | sed 's/.*://' | sed 's/class /    /' | sed 's/ extends / -> /' | sed 's/ implements .*//'  | sed 's/ \?{.*$//' | sort >> code.dot  
echo '}' >> code.dot; 
fdp -Tpng -ocode.fdp.png code.dot 2> /dev/null # Ignore syntax error
echo "OK"; 

Sonra sadece:

cd /var/www/my_app/                     # or wherever
bash ~/shell/generateClassHierarchy.sh  # or wherever
eog code.fdp.png 

Tercih resim görüntüleyici ile EOG değiştirin. Ben bir test olarak Zend Framework bu çalıştırın ve bir 22 megabayt PNG grafiği üretti. Sadece Zend_Db'nin üzerinde çalışan size gösteren bu (örnek benim sitede):

http://chapman.id.au/generate-php-class-inheritance-diagrams-in-graphviz