unnutz / laravel-environment-config by unnutz

Bring back environment configuration cascading to Laravel
210
1
2
Package Data
Maintainer Username: unnutz
Maintainer Contact: artyom.sokolov@gmail.com (Artyom Sokolov)
Package Create Date: 2015-09-16
Package Last Update: 2015-09-17
Language: PHP
License: MIT
Last Refreshed: 2024-04-18 03:00:38
Package Statistics
Total Downloads: 210
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 1
Total Watchers: 2
Total Forks: 0
Total Open Issues: 0

Laravel Environment Configuration

Description

It is often helpful to have different configuration values based on the environment the application is running in. For example, you may wish to use a different cache driver on your local development machine than on the production server. It is easy to accomplish this using environment based configuration.

Installation

Add dependency to your composer.json

    "require": {
        "unnutz/laravel-environment-config": "~1.0"
    },

Open bootstrap/app.php and update code so it will look similar to this:

<?php

// ...

$app->singleton(
    Illuminate\Contracts\Http\Kernel::class,
    App\Http\Kernel::class
);

$app->singleton(
    Illuminate\Contracts\Console\Kernel::class,
    App\Console\Kernel::class
);

$app->singleton(
    Illuminate\Contracts\Debug\ExceptionHandler::class,
    App\Exceptions\Handler::class
);

// TODO: INSERT THESE TWO LINES
if (class_exists('Unnutz\LaravelEnvironmentConfig\Listeners\LoadConfigurationEventListener'))
    app('events')->subscribe('Unnutz\LaravelEnvironmentConfig\Listeners\LoadConfigurationEventListener');

Usage

Simply create a folder within the config directory that matches your environment name, such as local. Next, create the configuration files you wish to override and specify the options for that environment. For example, to load additional service provider for the local environment, you would create a app.php file in config/local with the following content:

<?php

return [

    'providers' => append_config([
        
        // additional service providers can be loaded here
    ]),

];

Please note that in order to merge two configurations you have to use append_config(array $config).

License

This package is open-sourced software licensed under the MIT license