hail/config

Config management tools

v0.10.1 2021-08-09 10:32 UTC

This package is auto-updated.

Last update: 2024-04-09 16:48:34 UTC


README

Loaders

.yml / .yaml

Hail\Config\Loader\Yaml

key:
  sub: true  

.json

Hail\Config\Loader\Json

{
  "key": {
    "sub": true
  }
}

.php

Hail\Config\Loader\Php

<?php
return [
    'key' => [
        'sub' => true
    ],
];

Example

use Hail\Config\Env

$env = new Env(__DIR__);
$env->get('ENVIRONMENT');

use Hail\Config\Config;

$cachePath = __DIR__ . DIRECTORY_SEPARATOR . 'cache';
$options = [
    'path' => __DIR__, // same as 'path' => ['env' => __DIR__, 'config' => __DIR__ . DIRECTORY_SEPARATOR . 'config'],
    'loaders' => [  // if empty, the default loader is Hail\Config\Loader\Php 
        Config::loader('yaml', $cachePath),
        Config::loader('json', $cachePath)
    ]
];
$config = new Config(...$options);

$config->addLoader(
    new Hail\Config\Loader\Php()
);

$config->get('filename.key.sub');

$env->get('ENVIRONMENT') === $config->env('ENVIRONMENT'); //true
$config->env->get('ENVIRONMENT') === $config->env('ENVIRONMENT'); //true
$config->env === $config->env(); //true