wongdoody / php-uml-crafter
此包可以从PHP代码生成UML图
Requires
- php: ^8.2
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
README
此包可以从PHP代码生成UML图。要查看图,需要PlantUML,您可以在代码编辑器中安装插件,或者使用在线工具来可视化。
安装
您可以通过composer安装此包
composer require wongdoody/php-uml-crafter
Laravel项目中的使用
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag=php-uml-crafter-config
这是发布到Laravel项目的配置文件内容
return [ 'excludeFiles' => [ ], 'excludeDirectories' => [ 'bootstrap', 'config', 'database/migrations', 'database', 'lang', 'node_modules', 'public', 'resources', 'routes', 'storage', 'tests', 'vendor', ], ];
扫描类命令
php artisan uml-crafter:scan
生成PlantUML文件命令
php artisan uml-crafter:generate
您也可以在命令中传递以下选项
--project-path
:PHP框架项目根目录的路径作为字符串。
--exclude-directories
:要排除的目录,如果有的话,以逗号分隔的列表。
--exclude-files
:要排除的文件,如果有的话,以逗号分隔的列表。
--save-path
:保存生成的UML图的路径作为字符串。
--include-traits
:--include-traits=true
扫描特性和接口
其他PHP框架中的使用
对于其他PHP框架,您仍然可以使用UML Crafter包来扫描类和生成UML图。以下是一个通用的命令,可以根据不同框架的结构和需求进行调整。
扫描类
uml-crafter:generate --project-path=your_project_directory --exclude-directories=directories_to_exclude --exclude-files=files_to_exclude --save-path=path_to_save_scanned_data --include-traits=true
根据您的PHP框架的目录结构和偏好,将占位符(your_project_directory,directory_to_exclude,file_to_exclude,path_to_save_diagrams)替换为适当的值。
--project-path
:PHP框架项目根目录的路径作为字符串。
--exclude-directories
:要排除的目录,如果有的话,以逗号分隔的列表。
--exclude-files
:要排除的文件,如果有的话,以逗号分隔的列表。
--save-path
:保存生成的UML图的路径作为字符串。
请确保调整命令参数以匹配您特定的PHP框架的结构和需求。
样式
对于uml-crafter:generate命令,还有一个选项可以更改样式为浅色模式(默认为深色模式)。将以下标志添加到命令中
--light-mode
:更改样式为浅色模式
示例:php artisan uml-crafter:generate --light-mode=true
鸣谢
许可证
GNU通用公共许可证(GPL-3)。