Uma ferramenta para criar visualizações relacionadas a dependência com base em dados crus criados através do plug-in CallMap para o Phpstan.
Para criar os dados brutos necessários, você precisará executar esses comandos:
# Install PHPStan
composer require --dev phpstan/phpstan
# Install callmap-plugin
composer require --dev phpdepend/callmap
# parse the sources and generate the callmap.json file
./vendor/bin/phpstan analyse -c vendor/phpdepend/callmap/callmap.neon [path/to/your/sources] Isso criará um arquivo callmap.json no seu diretório de trabalho atual, que é a base para todos os comandos a seguir.
Phpdepend pode ser instalado via
A instalação via compositor é direta
composer require --dev phpdepend/phpdepend Isso disponibilizará o phpdend via ./vendor/bin/phpdepend
A instalação via phive também é possível. Isso verificará especialmente as correspondências da assinatura para que você possa confiar que o PHAR baixado é o que foi assinado durante a construção.
phive install phpdepend/phpdepend Isso disponibilizará o PhpDepend via ./tools/phpdepend
Você também pode baixar o arquivo PHAR mais recente da página Relase.
curl -LO https://api.getlatestassets/github/phpdepend/phpdepend/phpdepend.phar
chmod a+x phpdepend.phar Isso disponibilizará o phpdend via ./phpdepend.phar
Crie uma matriz de dependência para ver qual parte do seu aplicativo depende de quais outras partes.
phpdepend matrix < path/to/callmap.json >Isso criará um arquivo html na pasta atual cujo conteúdo se parece com o seguinte:

Crie uma visão geral de seus aplicativos. O gráfico gera um arquivo Plantuml a partir de um arquivo callmap-json.
phpdepend graph < path/to/callmap.json > Isso gerará um arquivo planuml callmap.plantuml no diretório atual.
Você pode usar este arquivo para gerar um PNG OS SVG usando um renderizador Plantuml como em http://www.plantuml.com/plantuml/uml/
Como alternativa, você pode usar a imagem Plantuml-Docker como esta:
# Render a PNG file from the callmap.plantuml file
docker run -v " $( pwd ) :/app " -w " /app " ghcr.io/plantuml/plantuml callmap.plantuml Para o plugin phpdepend/callmap que deve gerar algo assim:
