Laravel 的特性标记
发布时间 作者 Paul Redmond
由 Peter Fox 开发的 Laravel 特性标记包可帮助您在 Laravel 应用程序中处理 特性切换(又名特性标记)
特性标记有时也称为特性切换或特性开关。从根本上来说,它是一种编码策略,与源代码控制一起使用,以简化持续集成和持续部署。标记的思想是通过基本保护代码段,防止代码段在特性标记处于未开启状态时执行。
该包旨在通过提供适用于您的代码、路由、Blade 文件、任务调度和验证的解决方案,让在整个应用程序中实现此类标记变得更加容易。
该包提供具有多种存储选项的配置,并帮助您在各种上下文中使用它:
- Blade 视图
- 路由中间件
- 验证规则
- 任务调度
- Artisan 命令
- 自定义 PHP 逻辑
使用该包,您可以使用提供的 Features
门面或服务来执行诸如检查特性是否开启或关闭之类的操作。
Features::accessible('my-feature') // returns true or false
在 Blade 模板中进行相同的检查将如下所示
@feature('my-feature') <p>Your feature flag is turned on.@endfeature @feature('my-feature', false) <p>Your feature flag is turned off.@endfeature
使用相同的特性名称,您可以使用提供的中间件切换路由的开启/关闭状态
Route::get('/', 'SomeController@get') ->middleware('feature:my-feature');
您可以在 GitHub 上 ylsideas/feature-flags 上了解更多有关该包的信息,获取完整的安装说明并查看源代码。