microweber-packages / microweber-env-writer
A standalone .env file writer for Laravel. Reads, updates and appends key-value pairs while preserving comments and preventing duplicate keys.
Package info
github.com/microweber-packages/microweber-env-writer
pkg:composer/microweber-packages/microweber-env-writer
Requires
- php: ^8.1
- microweber-packages/microweber-package: *
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- orchestra/testbench: ^8.0|^9.0|^10.0
- phpunit/phpunit: ^10.0|^11.0
Suggests
None
Provides
None
Conflicts
None
Replaces
- microweber-packages/env-writer: *
This package is auto-updated.
Last update: 2026-11-03 17:06:28 UTC
README
A standalone .env file writer for Laravel. Reads, updates and appends key-value pairs while preserving comments and preventing duplicate keys.
Installation
composer require microweber-packages/microweber-env-writer
The service provider is auto-discovered by Laravel.
Usage
Via Facade (recommended)
use MicroweberPackages\EnvWriter\Facades\EnvWriter; EnvWriter::save(['APP_KEY' => 'new-key'], base_path('.env')); $values = EnvWriter::read(base_path('.env'));
Via Dependency Injection
use MicroweberPackages\EnvWriter\EnvWriterService; public function install(EnvWriterService $envWriter) { $envWriter->save([ 'APP_KEY' => 'base64:your-key', 'DB_HOST' => 'localhost', 'APP_DEBUG' => true, ], app()->environmentFilePath()); }
Direct Instantiation (no Laravel required)
$writer = new \MicroweberPackages\EnvWriter\EnvWriterService(); $writer->save(['KEY' => 'value'], '/path/to/.env'); $values = $writer->read('/path/to/.env');
Service class: MicroweberPackages\EnvWriter\EnvWriterService
Facade class: MicroweberPackages\EnvWriter\Facades\EnvWriter
Features
- Updates existing keys in place
- Appends new keys at the end
- Removes duplicate keys automatically
- Collapses consecutive blank lines
- Preserves comments
- Properly quotes values with spaces, hashes, or quotes
- Handles booleans, integers, nulls, and strings
- Read/parse
.envfiles into associative arrays - No Laravel dependency for core functionality