A simple dot notation connfiguration package

Fund package maintenance!
JustSteveKing

v2.0.0 2021-02-18 21:57 UTC

This package is auto-updated.

Last update: 2024-10-19 05:50:57 UTC


README

Latest Version Software License PHP Version run-tests Scrutinizer Code Quality Total Downloads

Please note, this package is a work in progress. While there will be no breaking changes a stable release is not yet available

A simple dot notation configuration package.

Installing

Using composer:

$ composer require juststeveking/config

You are then to use this package however you need.

Usage

// app.php
return [
    'name' => 'super cool app',
    'version' => 'v1.0.0',
    'items' => [
        'router' => 'awesome php router'
    ]
];

$appConfig = require __DIR__ . '/../config/app.php'; // an array

$config = Repository::build($appConfig);

$config->all(); // returns all items in config
$config->has('name.version'); // returns a boolean for if the item is available
$config->get('items.router'); // will return "awesome php router"
$config->getMany(['name', 'version']); // will return ['name' => 'super cool app', 'version' => 'v1.0.0']
$config->set('items.database', 'pdo'); // will set 'database' => 'pdo' on the items array
$config->all(); // will reurn the entire config array

Tests

There is a composer script available to run the tests:

$ composer run preflight:test

However, if you are unable to run this please use the following command:

$ ./vendor/bin/phpunit --testdox

Security

If you discover any security related issues, please email juststevemcd@gmail.com instead of using the issue tracker.