jeyroik/deprecated-sm-base

该包最新版本(0.4.0)没有提供许可证信息。

已弃用包

0.4.0 2023-05-05 12:02 UTC

This package is auto-updated.

Last update: 2024-09-05 15:04:35 UTC


README

此包已弃用!

请勿使用!

extas-m

可扩展状态机

阶段流程请见此处: http://extas.jeyroik.ru(俄语)

安装

composer require jeyroik/extas-m:*

用法

  • 定义通用插件
  • 定义所有其他插件
  • 定义机器配置
  • 定义状态(或您可以使用内置分发器进行测试目的)的分发器
  • 运行机器
$config = [...]; // or dsn if you have db generic plugins
$extas = new jeyroik\extas\components\systmes\states\StateMachine($config);
$extas->run();

如果您使用状态路由插件(默认),您可以看到状态路由

echo '<pre>';
print_r($extas->getRoute());
echo '</pre>';

扩展状态机

Extas 允许您通过两个维度扩展它

  • 功能
  • 阶段触发

阶段 - 它们就像事件,您可以在达到阶段时对其做出反应。

功能 - 这是一种内置的扩展对象接口的机会,无需通过类扩展来物理扩展它们。这是通过扩展实现的。

插件

  • 创建您的插件
  • 将其添加到您的项目中

扩展

  • 创建扩展
  • 将其添加到您的项目中