moodev/bounce

该软件包已被放弃,不再维护。没有建议的替代软件包。

PHP依赖注入框架,类似于Spring

v1.3.1 2016-01-11 19:40 UTC

This package is not auto-updated.

Last update: 2021-02-19 22:17:33 UTC


README

Build Status

Bounce 是一个PHP依赖注入框架,类似于Spring的一个子集。它曾经是一个独立的框架,在运行时做了很多工作,因此成本相对较高。现在它是Symfony2 DI库的前端,比Bounce发展得更完善。

使用方法

创建一个上下文XML文件(请参阅测试中的某些示例。)

然后

使用Symfony2的新风格

在您的Symfony2应用中使用BounceFileLoader。BounceFileLoader和Symfony XMLFileLoader都将尝试声明所有.xml文件,这并不是理想的情况。您可能需要在它们前面引入一种委托加载器,通过路径、文件名等方式进行过滤,以防止这种情况。抱歉。

旧风格的ApplicationContext接口和配置

实例化一个SymfonyApplicationContext。这将加载提供的上下文到一个新的Symfony容器中,并用旧ApplicationContext接口包装它。

如果您正在寻找一种从Bounce XML格式迁移的路径,但是有大量使用ApplicationContext接口的情况,可以将不同的FileLoaderFactory传递给SymfonyApplicationContext,这可能会允许从其他风格的Symfony配置中加载服务。遗憾的是,bounce xml的import语句不会调用文件加载器,因此bounce xml文件无法导入不是其他bounce xml文件的东西。

ApplicationContext接口,外部提供的容器

SymfonyContainerBeanFactory可以包装现有的容器,并用于实例化简单的ApplicationContext。这将为您提供ApplicationContext接口,而没有bounce的其他配置功能。

(当然,您可以使用BounceFileLoader加载自己的容器,这基本上是SymfonyApplicationContext的快捷方式。)

支持的内容

仅支持基本功能。属性和构造函数注入工作正常。可以通过工厂创建bean。查找方法工作,但只有当bean不是由工厂创建时才工作。作用域非常基础。默认是单例。理论上支持原型。