comphp / events
允许动态使用回调和事件
v0.1
2024-02-17 03:49 UTC
Requires
- php: ^8.3
- comphp/service-management: ^0.2
Requires (Dev)
- phpunit/phpunit: ^10.5.9
README
CommonPHP事件管理库提供了一个强大且灵活的系统,用于处理PHP应用程序中的事件驱动编程。它提供了事件注册、注销、触发和动态钩子管理的机制。
功能
- 事件注册与注销:轻松在您的应用程序中注册和注销事件。
- 动态钩子管理:支持优先级排序,将回调(钩子)附加到事件上。
- 事件触发:动态触发事件,按优先级顺序执行所有附加的钩子。
- 异常处理:对事件相关操作提供强大的异常处理,确保清晰的错误报告和解决。
- 服务管理集成:无缝集成到CommonPHP服务管理框架,用于依赖管理。
安装
使用Composer将事件管理库安装到您的项目中
composer require comphp/events
基本用法
要开始使用CommonPHP事件管理库,请参阅库中提供的examples/general-usage.php
文件中的示例。此示例演示了如何在应用程序中设置EventManager
、注册事件、附加带回调的钩子以及触发事件。
示例涵盖了事件注册、钩子管理和事件触发等基本功能,展示了库与CommonPHP服务管理框架的集成,以实现全面的事件驱动编程。
// Sample snippet from examples/general-usage.php require '../vendor/autoload.php'; use CommonPHP\Events\EventManager; use CommonPHP\Events\ServiceProviders\EventManagerServiceProvider; use CommonPHP\ServiceManagement\ServiceManager; // Simulating the ServiceManager setup $serviceManager = new ServiceManager(); $serviceManager->providers->registerProvider(EventManagerServiceProvider::class); // Setting up the EventManager and registering it with the ServiceManager $eventManager = $serviceManager->get(EventManager::class); // Example usage of EventManager within a DemoClass class DemoClass { // Implementation details... } // For full example, please refer to examples/general-usage.php
有关包括事件注销和异常处理的完整且可运行的示例,请参阅提供的文件。这将使您对如何在项目中集成和使用事件管理功能有实际的理解。
高级用法
库还支持事件注销、基于优先级的钩子执行和强大的事件管理的异常处理等高级功能。有关更详细的示例,请参阅/examples
目录。
贡献
欢迎对CommonPHP事件管理库做出贡献。请参阅贡献指南,以获取有关提交拉取请求、报告问题或请求功能的更多信息。
许可证
此库是开源软件,根据MIT许可证授权。