Php Codeigniter:如何向受控(测试版)用户群推出功能? 解释

Php Codeigniter:如何向受控(测试版)用户群推出功能? 解释,php,codeigniter,rollout,Php,Codeigniter,Rollout,我正在开发一个web应用程序内置的CodeIgniter。由于我不断添加新功能,其中一些可能不稳定。因此,我想先有一种方法将这些特性“推出”到指定的组。如果一切顺利,我会让整个用户社区都能使用该功能 我现在想到的解决方案包括一个配置文件,其中包含每个发布组的功能阵列: alpha = array( "feature A" => true, "feature B" => true, "feature C" => true ); beta = ar

我正在开发一个web应用程序内置的CodeIgniter。由于我不断添加新功能,其中一些可能不稳定。因此,我想先有一种方法将这些特性“推出”到指定的组。如果一切顺利,我会让整个用户社区都能使用该功能

我现在想到的解决方案包括一个配置文件,其中包含每个发布组的功能阵列:

alpha = array(
    "feature A" => true,
    "feature B" => true,
    "feature C" => true
    );

beta = array(
    "feature A" => true,
    "feature B" => true,
    "feature C" => false
    );

production = array(
    "feature A" => false,
    "feature B" => false,
    "feature C" => false
    );
然后将我的应用程序中的用户分为组(alpha、beta、production),系统将为当前用户提供适用的功能

“提供适用功能”的这一部分,我现在考虑使用(丑陋的)结构,如下所示:

if ($feature_array["feature A"])
{
   /* run the code for feature A */
}
不过,这种结构的问题是,如果该特性向所有用户推出,那么该代码就不再是必需的,但仍然会被搁置在那里

我的问题
是否有针对此类功能的解决方案/标准设置/库,以避免我在功能完全推出时必须返回并删除这些“if语句”?

我个人希望开发基于角色的身份验证系统

不确定生产中是否已经有角色,但实际上您将使用一个包含角色的表,为每个成员分配一个特定的角色(或者用户级别,如果您愿意的话)

然后,您可以在控制器/模型中的业务逻辑中提供适当的功能

一旦某个功能通过测试阶段,您就可以更新每个功能的角色,使其具有访问权限

(从零开始做正确的工作是相当多的,但这取决于您希望它的可扩展性,它可能值得做)


你也可以考虑一个- CI现有的解决方案。

< P>这是非常基本的,但是看一下。

可能是use@phil那个回购协议和用户似乎已经离开了,你们知道它是否可能转移到了其他地方吗?