brightnucleus / service-locator
基于 Pimple 的配置驱动服务定位器
v0.3.1
2016-10-05 10:21 UTC
Requires
- brightnucleus/config: >=0.4.7
- brightnucleus/exceptions: >=0.2
- brightnucleus/injector: >=0.3
- container-interop/container-interop: ^1
- pimple/pimple: ^3
- psr/log: ^1
Requires (Dev)
README
基于 Pimple 的配置驱动服务定位器。
这是一个配置驱动的服务定位器,允许通过 brightnucleus/config
组件轻松注册和检索服务。
它扩展了 pimple/pimple
包。
目录
关于 Bright Nucleus 服务架构
此包是 Bright Nucleus 服务架构的一部分,该架构结合了配置管理系统(brightnucleus/config
)、依赖注入器(brightnucleus/injector
)、服务定位器(brightnucleus/service-locator
)、日志子系统(brightnucleus/log
)、虚拟服务提供者(brightnucleus/virtual-services
)以及相应的 WordPress 插件(brightnucleus/wp-services
和 brightnucleus/wp-log
),构成了以下架构的基础:
- 通过配置文件配置所有涉及的组件,这些配置文件可以通过特定于站点、环境或自定义注入的设置覆盖默认值。一次编写代码,在所有站点和环境中重复使用。
- 合适的注入器,让您将代码库与接口耦合,并在运行时决定要注入的具体实现。
- 服务定位器管理加载顺序和依赖关系。只加载和实例化在当前上下文中实际需要的代码,该上下文通过其他正在运行的真实和虚拟服务定义。
- 日志子系统提供通用日志记录和错误处理,同时提供在任何粒度级别覆盖日志设置的手段。
- 虚拟服务让您能够将第三方和旧代码纳入服务定位器的加载顺序和依赖关系管理流程中。
- 该架构在 WordPress 页面请求周期内运行效果良好,同样也适用于 CLI 或 REST API 请求。
- 针对 WordPress 的特定助手,让您能够在 WordPress 后端监控系统的状态。
安装
最佳使用方式是通过 Composer
composer require brightnucleus/service-locator
基本用法
待办事项
贡献
所有反馈/错误报告/拉取请求都欢迎。
此包使用 PHP Composter PHPCS PSR-2 包来检查提交的文件是否遵守 PSR-2 编码风格指南。如果您有跳过此检查的有效理由,请将 --no-verify
选项添加到您的提交命令中。
git commit --no-verify
许可协议
此代码根据 MIT 许可证发布。
有关完整的版权和许可信息,请查看与源代码一起分发的 LICENSE
文件。