exs/silex-darklaunch-provider

Silex2 的暗启动提供商捆绑包

dev-master / 1.0.x-dev 2015-08-13 14:30 UTC

This package is auto-updated.

Last update: 2024-08-29 05:03:30 UTC


README

基于用户IP提供暗启动能力。

在Silex项目中安装EXS-silex-darklaunch-provider

安装过程实际上非常简单。使用Composer设置一个Silex项目。

一旦新项目设置完成,打开composer.json文件并将exs/silex-darklaunch-provider添加为依赖项

//composer.json
//...
"require": {
        //other bundles
        "exs/silex-darklaunch-provider": "@dev"

或者您也可以通过命令行添加

$ composer.phar require exs/silex-darklaunch-provider ~1.0@dev

保存文件并通过命令行使用composer update更新项目

php composer.phar update

Composer现在将更新所有依赖项,您应该在列表中看到我们的捆绑包

  - Installing exs/silex-darklaunch-provider (dev-master 463eb20)
    Cloning 463eb2081e7205e7556f6f65224c6ba9631e070a

更新app.php以包含EXS-silex-darklaunch-provider提供商

//app.php
//...
$app->register(new \EXS\DarklaunchProvider\Providers\Services\DarklaunchProvider());

在config.php中添加到活动暗启动功能或服务中的IP

//...
$app['exs.active.ips'] = array(
    '127.0.0.1',
    MORE IPS HERE
);
//...

用法

声明服务

//...
use EXS\DarklaunchProvider\Services\DarklaunchService;

$darkLauncher = new DarklaunchService(ARRAY_OF_ACTIVE_IPS);
//...

// or inject the service in your service provider

//...
use Pimple\ServiceProviderInterface;
use Pimple\Container;

class YourServiceProvider implements ServiceProviderInterface
{
    public function register(Container $container)
    {
        $container[YOUR_SERVICE_PROVIDER_NAME] = ( function ($container) {
            return new YOUR_SERVICE_PROVIDER_LOCATION($container['exs.serv.darklaunch']);
        });                
    }
}

// in your service constructor
public function __construct(DarklaunchService $darklaunchService)
{              
    $this->darklaunchService = $darklaunchService;
}
//...

包装将被暗启动并由IP触发的函数或服务

//...
if($darkLauncher->isActiveIp()) {
    FUNCTION_TO_BE_DARKLAUNCHED
}

// or if you already know the user ip

if($darkLauncher->isActiveIp(USER_IP_HERE)) {
    FUNCTION_TO_BE_DARKLAUNCHED
}
//...

贡献

任何人都可以贡献。

如果您有任何问题或建议,请告诉我们