PHP code example of vilnisgr / env-editor

1. Go to this page and download the library: Download vilnisgr/env-editor library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

vilnisgr / env-editor example snippets


use VilnisGr\EnvEditor\Writer\DotenvWriter;

$writer = new DotenvWriter();
$writer->load('.env');

$writer->set('APP_ENV', 'production');
$writer->save();

$writer = new DotenvWriter();
$writer->load('.env');

$writer->set('APP_NAME', 'MyApp');

$writer->after('DB_HOST')->set('DB_PORT', '3306');

$writer->before('APP_ENV')->set('APP_NAME', 'NewName');

$writer->after('APP_ENV')->spacing(2)->set('API_KEY', 'xyz');

$writer->top()->set('HEADER', '1');
$writer->bottom()->set('FOOTER', '9');

$writer->set('TOKEN', 'abc', position: ['after' => 'API_KEY'], spacing: 1);

$writer->remove('DB_USER');

$writer->import([
    'A' => '1',
    'B' => '2'
]);

$array = $writer->toArray();

$writer->save();                  // atomic
$writer->save(atomic: false);     // simple write

echo $writer->preview();

$writer->backup('.env.bak');
$writer->restore('.env.bak');

$diff = $writer->diff('.env.example');

$writer->merge('.env.example', overrideExisting: false);

$loader = new EnvLoader('.env');
$loader->load(true);

$schema = EnvSchema::make()
    ->    ->int('DB_PORT')
    ->bool('DEBUG');

$rules = $schema->rules();

$rules->min('PORT', 1000);
$rules->max('PORT', 9000);
$rules->regex('API_KEY', '/^[A-Z]+$/');
$rules->in('APP_ENV', ['local','prod']);
$rules->length('TOKEN', 32);

$schema->group('DB_', function (EnvSchema $db) {
    $db->

$factory = new EnvConfigFactory($schema, $writer);
$config = $factory->make(AppConfig::class);

final class AppConfig
{
    public function __construct(
      public string $appName,
      public int $dbPort,
      public bool $debug
    ) {}
}

final class AppConfig
{
    public function __construct(
        public string $appName,  // maps to APP_NAME
        public int    $dbPort,   // maps to DB_PORT
        public bool   $debug     // maps to DEBUG
    ) {}
}



use VilnisGr\EnvEditor\Writer\DotenvWriter;
use VilnisGr\EnvEditor\Schema\EnvSchema;
use VilnisGr\EnvEditor\Schema\EnvConfigFactory;

$writer = new DotenvWriter();
$writer->load('.env');

$schema = EnvSchema::make()
    ->

$env = $writer->toArray();  
echo $env['APP_NAME'];

echo $config->appName;   // string  
echo $config->dbPort;    // int  
echo $config->debug;     // bool  

use VilnisGr\EnvEditor\Loader\EnvLoader;

$loader = new EnvLoader('.env');
$loader->load(true); // true = overwrite system env vars

echo getenv('APP_NAME');   // string
echo $_ENV['APP_NAME'];    // string
echo $_SERVER['APP_NAME']; // string

export APP_KEY=123