dida/container

The Container Component of Dida Framework

v0.1.1 2019-12-04 13:41 UTC

This package is auto-updated.

Last update: 2024-12-05 00:20:40 UTC


README

Dida\Container 是一个容器类,可以为 App 提供懒加载、依赖注入和服务定位功能。它是 宙品科技 开源的 Dida 框架 的一个容器功能组件。

遵循的规范

支持三种服务类型

  • 类名 -- CLASSNAME_TYPE
  • 闭包函数 -- CLOSURE_TYPE
  • 服务实例 -- INSTANCE_TYPE

本质上,每一个服务条目都是一个对象实例。

API

  • has($id) -- 是否存在某个服务
  • set($id, $service) -- 设置一个服务
  • setSingleton($id, $service) -- 设置一个单例服务
  • get($id) -- 获取一个共享的服务实例
  • getShared($id, array $parameters = []) -- 获取一个共享的服务实例
  • getNew($id, array $parameters = []) -- 获取一个新的服务实例(不可用于 Singleton 服务,否则会抛出异常)
  • remove($id) -- 删除一个服务
  • keys() -- 获取所有已注册的服务 id

作者

感谢

版权声明

版权所有 (c) 上海宙品信息科技有限公司。
Copyright (c) Zeupin LLC. http://zeupin.com

源代码采用 MIT 授权协议。
Licensed under The MIT License.

如需在您的项目中使用,必须保留本源代码中的完整版权声明。
Redistributions of files MUST retain the above copyright notice.