phpsoftbox/config

Config component for the PhpSoftBox framework

Maintainers

Package info

github.com/phpsoftbox/config

pkg:composer/phpsoftbox/config

Transparency log

Statistics

Installs: 135

Dependents: 3

Suggesters: 0

Stars: 0

Open Issues: 0

dev-master 2026-08-03 19:39 UTC

This package is auto-updated.

Last update: 2026-08-03 19:39:41 UTC


README

Компонент для чтения и объединения конфигурации с поддержкой вложенных ключей и слоёв окружений.

Установка

composer require phpsoftbox/config

Быстрый старт

<?php

declare(strict_types=1);

use PhpSoftBox\Config\Config;
$config = new Config(sources: [
    ['app' => ['name' => 'demo'], 'debug' => false],
    fn () => ['debug' => true],
]);

$name = $config->get('app.name'); // demo
$debug = $config->get('debug');   // true

Config хранит только конфигурационные данные. Окружение приложения, его сравнение и effective debug предоставляет компонент phpsoftbox/application через ApplicationEnvironment.

ConfigFactory принимает строковый идентификатор окружения только для выбора конфигурационного слоя и формирования cache key:

$config = new ConfigFactory(environment: 'dev')->create();

Произвольные ключи app.env и app.debug не имеют специальной семантики.

Документация

Настройки в БД вынесены в отдельный компонент:

  • phpsoftbox/db-config

CLI

php psb config:encrypt "secret" --cipherKey="your-key"
php psb config:decrypt "ciphertext" --cipherKey="your-key"

Если --cipherKey не указан, используется APP_KEY из окружения.