PHPackages                             lorenzoferrarajr/lfj-configuration-builder - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. lorenzoferrarajr/lfj-configuration-builder

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

lorenzoferrarajr/lfj-configuration-builder
==========================================

A PHP library to build array configuration from various sources

0.2.2(10y ago)238MITPHPPHP &gt;=5.5CI failing

Since Sep 26Pushed 10y ago1 watchersCompare

[ Source](https://github.com/lorenzoferrarajr/lfj-configuration-builder)[ Packagist](https://packagist.org/packages/lorenzoferrarajr/lfj-configuration-builder)[ Docs](https://github.com/lorenzoferrarajr/lfj-configuration-builder)[ RSS](/packages/lorenzoferrarajr-lfj-configuration-builder/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (5)Dependencies (2)Versions (5)Used By (0)

lfj-configuration-builder
=========================

[](#lfj-configuration-builder)

A PHP library to merge configuration arrays.

[![Build Status](https://camo.githubusercontent.com/6504ed9c8aa9cb0e7833653eccb545e70228b776ecd9d775d01130d96d6a1235/68747470733a2f2f7472617669732d63692e6f72672f6c6f72656e7a6f666572726172616a722f6c666a2d636f6e66696775726174696f6e2d6275696c6465722e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/lorenzoferrarajr/lfj-configuration-builder)

Installation
------------

[](#installation)

The suggested installation method is via [composer](https://getcomposer.org/):

```
composer require lorenzoferrarajr/lfj-configuration-builder
```

Usage
-----

[](#usage)

Instantiate a `ConfigurationBuilder` object, add configurations, call the `build` method to get the merged array. `Zend\Stdlib\ArrayUtils::merge` is used for merging.

### Adding configurations

[](#adding-configurations)

The `ConfigurationBuilder` provides various methods that can be used to add configurations:

- `addFile`: to add a single php file returning an array
- `addFiles`: to add multiple files
- `addDirectory`: to add files located inside a directory
- `addArray`: to add configuration from array

### Exceptions

[](#exceptions)

To catch exceptions the `build` method can be called inside a `try` block. Available exceptions are:

- `FileNotExistsException`
- `FileNotReadableException`
- `NotArrayException`: if a configuration file does not return an array
- `NotFileException`

Examples
--------

[](#examples)

For the examples two configuration files are be used: `mail.global.php` and `mail.local.php`

```
