phine / locator
此软件包已被废弃,不再维护。未建议替代软件包。
服务定位器设计模式的实现。
1.1.0
2013-09-18 18:53 UTC
Requires
- php: >=5.3.3
- phine/exception: ~1.0
Requires (Dev)
This package is not auto-updated.
Last update: 2021-12-07 01:41:36 UTC
README
服务定位器设计模式的实现。
用法
use Phine\Locator\Locator; use Phine\Locator\Service\AbstractService; use Phine\Locator\Service\ResolvableInterface; /** * A service that simply gets returned. */ class SimpleService extends AbstractService { } /** * A service that causes the locator to return something else. */ class ResolvedService extends AbstractService implements ResolvableInterface { /** * {@inheritDoc} */ public function getResolvedValue() { return 'Something else.'; } } // create my locator $locator = new Locator(); // register my services $locator->registerService('simple', new SimpleService()); $locator->registerService('resolved', new ResolvedService()); // access my services echo get_class($locator->getService('simple')); // "SimpleService" echo $locator->resolveService('resolved'); // "Something else."
上文的数组可访问版本
use Phine\Locator\ArrayLocator; // create my locator $locator = new ArrayLocator(); // register my services $locator['simple'] = new SimpleService(); $locator['resolved'] = new ResolvedService(); // access my services echo get_class($locator['simple']); // "SimpleService" echo $locator['resolved']; // "Something else."
示例
请参阅 wiki 中的示例。
需求
- PHP >= 5.3.3
- Phine 异常 >= 1.0.0
安装
通过 Composer
$ composer require "phine/locator=~1.0"
文档
您可以在 docs/
目录中找到文档。
许可
此库可在 MIT 许可 下使用。