用于功能切换的现有PHP工具

用于功能切换的现有PHP工具,php,continuous-integration,continuous-deployment,featuretoggle,Php,Continuous Integration,Continuous Deployment,Featuretoggle,最近,我读了一些文章,讨论了使用“功能切换”或“看门人”在开发完成之前对用户隐藏功能的想法。Facebook和Flickr也都谈到了他们如何在向所有人发布新功能之前,使用它来测试一部分用户的新功能 谷歌搜索没有发现任何可以添加到web应用程序中来处理此类事情的现有PHP包/工具。这看起来很简单,足以让我们自己滚动,但如果我们不需要的话,就没有理由重新发明轮子。是否有任何现有的PHP工具可以做到这一点 文章 马丁·福勒 关于flickrdevlog 澄清:我想看看它是否存在的部分是管理面板,它

最近,我读了一些文章,讨论了使用“功能切换”或“看门人”在开发完成之前对用户隐藏功能的想法。Facebook和Flickr也都谈到了他们如何在向所有人发布新功能之前,使用它来测试一部分用户的新功能

谷歌搜索没有发现任何可以添加到web应用程序中来处理此类事情的现有PHP包/工具。这看起来很简单,足以让我们自己滚动,但如果我们不需要的话,就没有理由重新发明轮子。是否有任何现有的PHP工具可以做到这一点

文章

  • 马丁·福勒
  • 关于flickrdevlog
澄清:我想看看它是否存在的部分是管理面板,它控制哪些用户可以看到新功能。在Flickr的例子中,他们可以根据主机打开它。在Facebook的例子中,他们添加了一些功能,例如将某项功能的用户限制在5%,仅限TechCrunch用户或仅限东海岸用户

当您有200个已打开的功能、10个尚未完成的功能以及3个正在为某些用户演示的功能时,管理面板似乎至关重要

if (user_can_see_app()) {
    show_app();
} else {
    dont_show_app();
}

我不明白为什么这么简单的东西需要一个包。

我已经为功能切换模式编写了一个微服务,名为Bipolar:

它是用Python编写的,但这并不重要,因为它是一个外部API和管理接口,所以,您只需要为它编写一个PHP客户端。我们在生产中使用它已经有一段时间了,但最近只在公开发布和文档方面进行了工作。对于JavaScript支持,它可以使用Webhook作为基本URL调用或通过推送器事件推送通知

我有点怀念多年没有接触PHP,但如果你有兴趣,我可以帮助你编写客户端


我希望这会有所帮助。

我找到的最简单的解决方案是将功能切换状态存储在某个可以轻松更改的远程位置(打开/关闭)

我发现在GitHub上很容易有一个repo,其中包含一些JSON数据和特性切换的状态,稍后您可以在GitHub上更改该状态(从phone/pc等…)

您的php代码需要获取JSON并从中做出决定

您可以查看有关如何实现这一目标的博客帖子:


它显示了如何以简单的方式实现这一点的代码片段。

非常简单,您可以自己滚动我一直在做,选中用户而不是我,不要加载菜单项。勾选“用户非我”从“前端控制器”部分重定向到首页您使用的是哪个框架?哪个网站服务器?哪个代理?功能切换在代码中只是一个“if”语句。有一篇很好的帖子解释了这一点,并且提出了一个想法,使其不仅仅是一个if使用功能切换管理器,这样您还可以测试它并管理功能切换。这个问题需要更多的吸引力更新问题。我很想看看是否有一个现有的管理面板来处理来自用户\u can\u see\u app()的答案。条件不是主要部分。拥有一个功能切换包最重要的是能够加载状态,本地缓存它们,并在多个地方验证相同的功能。此外,还可以使用管理工具和与其他语言、组件和前端集成的方法。