porta/psr14-events

使用 PSR-14 分发处理 PortaOne ESPF 事件

0.1.0 2024-01-03 14:44 UTC

This package is auto-updated.

Last update: 2024-09-03 16:17:28 UTC


README

目的

此包旨在简化 PortaBilling 事件处理。为 composer 构建,使用 PSR-4 自动加载,并遵循 PSR-14 事件分发器架构。它以 PSR-7 请求对象作为输入来创建事件,因此可以集成到任何基于 PSR 的框架。它似乎对 PSR-11(容器)友好,适合自动装配,但不直接支持 PSR-11。

它从所有依赖项中解耦,需要标准的 PSR 接口而不是确切实现。它使用

  • PSR-7 标准对象 Request
  • PSR-14 事件分发器,提供特定的 Event 和 ListenerProvider 类,还有一个非常通用的 Dispatcher 实现,以避免无用的依赖项

用法

尝试阅读和设置 示例。更多丰富文档即将推出!

请参考 PortaBilling 支持的事件类型 中的事件类型名称和每种类型的变量。

安装

在 Composer 存储中。只需添加适当的 require 部分

    "require": {
        "porta/psr14-events": "^0.1"
    }

在更改使用的版本之前,请查阅 变更日志

依赖项

Composer 依赖项

  • php: ^7.4|^8.0|^8.1|^8.2|^8.3
  • psr/event-dispatcher: ^1.0.0
  • psr/http-message: ^2.0

测试

在 php 7.4 到 8.3 上使用 PHPUnit 9.6 进行测试,100% 覆盖率,这并不意味着一切都会按预期工作。

当前的测试和兼容性状态检查在 Github 流程

要测试,以开发模式安装,并从库根使用 composer test 命令运行所有标准模块测试

已手动测试并用于 PortaBilling 版本 MR100。