Створити файл у config/, що повертає масив, і читати значення через config() з «крапковою» нотацією.
// config/billing.php
return [
'currency' => env('BILLING_CURRENCY', 'UAH'),
'trial_days' => (int) env('BILLING_TRIAL_DAYS', 14),
'gateways' => ['liqpay', 'stripe'],
];
$currency = config('billing.currency');
$days = config('billing.trial_days', 14); // значення за замовчуванням
$days = Config::integer('billing.trial_days'); // типізоване читання
Правила:
env()- лише у файлахconfig/. Післяphp artisan config:cacheфайл.envбільше не читається, іenv()у коді повернеnull;- секрети (ключі API, паролі) - у
.env, у файлі конфігурації лише посилання на змінну; - нову змінну додають і в
.env.example, щоб колеги й CI знали про неї.
Типізовані методи Config::string(), integer(), boolean(), array() кидають виняток, якщо значення не того типу. Помилка конфігурації видно одразу, а не в дивній поведінці далі.
Конфігурацію сторонніх пакетів публікують командою php artisan config:publish чи vendor:publish.