mlebkowski/silex-private-scope

Silex 容器私有作用域处理

0.1 2015-02-27 13:52 UTC

This package is auto-updated.

Last update: 2024-09-23 19:08:17 UTC


README

创建一个ScopedApplication实例以默认隐藏您的服务

$app = new Nassau\Silex\ScopedApplication([
    'version' => 1.0,
]);

$app['private-service'] = function () { };
$app['version']; // 1.0; services are registered as public if passed to constructor

$app['private-service']; // throws \Nassau\Silex\PrivateScopeViolationException

通过使用publish()方法创建公共服务。私有服务将在闭包内部可用

$app = new Nassau\Silex\ScopedApplication;
$app['public-service'] = $app->publish(function (Silex\Application $app) { 
    return $app['private-service'];
});
$app['private-service'] = function () { return "private" }

$app['public-service']; // "private";