Intermediate LevelLaravel
How does Laravel Pennant manage Feature Flags and A/B test rollouts?
❓ Interview Prompt: Explain Laravel Pennant, Feature::define(), feature checks (Feature::active()), user segment rollouts, and A/B testing.
Laravel Pennant is an official package for managing Feature Flags across application user segments.
Usage:
•
Define Feature: 'Feature::define("new-checkout", fn (User $user) => $user->id % 2 === 0);'
•
Check Feature: In code: 'if (Feature::active("new-checkout")) { ... }'. In Blade: '@feature("new-checkout")'.
Code Implementation Example
php
<?php
use LaravelPennantFeature;
use AppModelsUser;
// Define feature rollout for 10% of users
Feature::define('beta-dashboard', fn (User $user) =>
crc32((string) $user->id) % 100 < 10
);
// Check feature status
if (Feature::active('beta-dashboard')) {
// Render beta dashboard UI
}💡Defining percentage rollout feature flag using Laravel Pennant.
🎯 Interview Key Takeaway
Use Laravel Pennant to safely roll out new features and execute A/B test experiments across user segments.
#Pennant#Feature Flags#A/B Testing#Intermediate
Back to all Laravel Questions→