If you are using the Laravel framework, then install the dragon-code/env-sync-laravel package instead.
To get the latest version of Environment Synchronization
, simply require the project using Composer:
$ composer require dragon-code/env-sync --dev
Or manually update require-dev
block of composer.json
and run composer update
.
{
"require-dev": {
"dragon-code/env-sync": "^4.0"
}
}
This package scans files with
*.php
,*.json
,*.yml
,*.yaml
and*.twig
extensions in the specified folder, receiving from them calls to theenv
andgetenv
functions. Based on the received values, the package creates a key-value array. When saving, the keys are split into blocks by the first word before the_
character.Also, all keys are sorted alphabetically.
- Laravel / Lumen Frameworks - See the documentation in this repository.
To call a command in your application, you need to do the following:
use DragonCode\EnvSync\Services\Syncer;
protected function syncer(): Syncer
{
return Syncer::make();
}
protected function sync()
{
$this->syncer()
->path(__DIR__)
->filename('.env.example')
->store();
}
If you want to define default values or specify which key values should be stored, you need to pass an array to the constructor of the Config
class:
use DragonCode\EnvSync\Services\Syncer;
protected function syncer(): Syncer
{
return Syncer::make($this->config());
}
protected function config(): array
{
return require realpath(__DIR__ . '/your-path/your-config.php');
}
You can also suggest your implementation by sending a PR. We will be glad 😊
This package is licensed under the MIT License.