Feature flag kodu production-a söndürülmüş şəkildə göndərməyə və sonra seçilmiş auditoriya üçün aktiv etməyə imkan verir. Laravel Pennant bunun üçün rəsmi paketdir və qərarları verilənlər bazasında saxlayır.

bash
composer require laravel/pennant
php artisan vendor:publish --provider="Laravel\Pennant\PennantServiceProvider"
php artisan migrate

Feature-ların təyin edilməsi

Feature ad və resolver-dən ibarətdir: scope üçün dəyəri müəyyən edən closure (susmaya görə daxil olmuş istifadəçi).

php
use App\Models\User;
use Illuminate\Support\Lottery;
use Laravel\Pennant\Feature;

public function boot(): void
{
    Feature::define('new-checkout', fn (User $user) => match (true) {
        $user->isInternalTeamMember() => true,
        $user->isHighTrafficCustomer() => false,
        default => Lottery::odds(1 / 10),
    });
}
Pennant feature-u necə həll edir
Pennant feature-u necə həll edir