ananiaslitz/state-machine
最新稳定版本:v0.0.1
Composer 安装命令:
composer require ananiaslitz/state-machine
包简介
README 文档
README
StateMachine é uma biblioteca PHP para gerenciar máquinas de estados com a facilidade de configuração através de arquivos YAML. Com suporte adicional para a visualização da máquina de estados usando Graphviz.
Instalação
Para instalar a biblioteca, você pode usar o composer:
composer require ananiaslitz/state-machine
Uso Básico
1- Defina suas regras e estados no state-machine.yaml:
Exemplo de state-machine.yaml:
workflows: first_workflow: initialState: "idle1" states: - name: "idle1" - name: "running1" - name: "stopped1" transitions: - name: "start1" from: "idle1" to: "running1" rules: - "Ananiaslitz\\StateMachine\\Rules\\IsUrgentRule::class"
2 - Utilize a biblioteca em seu código:
require 'vendor/autoload.php'; $loader = new StateMachineLoader(); $data = $loader->createStateMachines();
Geração de Diagrama da Máquina de Estados
Para visualizar a máquina de estados, você pode gerar um diagrama utilizando o Graphviz.
Pré-requisitos:
Instale o Graphviz:
Para sistemas baseados em Debian/Ubuntu:
sudo apt-get install graphviz
Uso:
Para gerar o diagrama, execute:
php /vendor/bin/state-machine [formato]
Onde [formato] é opcional e pode ser png, svg, pdf, etc. Se nenhum formato for fornecido, será gerado um PNG por padrão.
Exemplo:
php /vendor/bin/state-machine [formato]
Após a execução, um arquivo de diagrama (por exemplo, state_machine.png) será gerado na raiz do seu projeto.
Contribuição
Sinta-se à vontade para abrir issues ou enviar pull requests. Sua colaboração é bem-vinda!
Licença
MIT License
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 5
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-08-25