infi-nl/laravel-feature-toggle

此包已被弃用,不再维护。没有建议的替代包。

Laravel 5 包,用于封装 joshuaestes/feature-toggle

v1.0.1 2014-07-29 18:08 UTC

This package is not auto-updated.

Last update: 2021-04-02 21:40:06 UTC


README

Travis CI Total Downloads License

Laravel 封装了 JoshuaEstes/FeatureToggle,这是一个库,允许您在开发过程中轻松添加和修改代码中的各种功能。

安装

将以下行添加到 composer.json 文件的 require 部分

{
    "require": {
        "infi-nl/laravel-feature-toggle": "dev-master"
    }
}

设置

  1. 'InfiNl\LaravelFeatureToggle\LaravelFeatureToggleServiceProvider', 添加到 app/config/app.php 中的服务提供者列表。
  2. 'FeatureContainer' => 'InfiNl\LaravelFeatureToggle\Facades\FeatureContainerFacade', 添加到 app/config/app.php 中的别名列表。

配置

创建文件 <app_root>/config/packages/infi-nl/laravel-feature-toggle/feature.php 并根据需要修改它。

配置文件必须按以下格式进行格式化

<?php
return array(
	"featureName1" => array(
		"enabled"      => true
	),
	...
	"featureNameN" => array(
		"enabled"      => false
	)
);

用法

通过 Facade FeatureContainerFacade、别名 FeatureContainer 或通过 IOC 容器中的 laravel-feature-toggle 服务,可以获取初始化了包配置中定义的功能的 JoshuaEstes\Component\FeatureToggle\FeatureContainer 实例。

测试功能可用性

FeatureContainer::hasFeature("featureName");

测试功能启用

$feature = FeatureContainer::getFeature("featureName");

$feature->isEnabled();

更多示例

上述示例仅显示了库的基本用法,对于更多高级示例和有关库的详细信息,请查看 JoshuaEstes/FeatureToggle 仓库。