PHPackages                             russsiq/laravel-env-manager - 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. russsiq/laravel-env-manager

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

russsiq/laravel-env-manager
===========================

Менеджер файла переменных окружения Laravel 9.x.

0.6.0(4y ago)288↓80%[2 PRs](https://github.com/russsiq/laravel-env-manager/pulls)2MITPHPPHP 8.1.\*

Since Mar 6Pushed 3y ago2 watchersCompare

[ Source](https://github.com/russsiq/laravel-env-manager)[ Packagist](https://packagist.org/packages/russsiq/laravel-env-manager)[ Docs](https://github.com/russsiq/laravel-env-manager)[ RSS](/packages/russsiq-laravel-env-manager/feed)WikiDiscussions master Synced yesterday

READMEChangelog (10)Dependencies (2)Versions (25)Used By (2)

Менеджер файла переменных окружения Laravel 9.x.
================================================

[](#менеджер-файла-переменных-окружения-laravel-9x)

Данный менеджер используется только для физического взаимодействия с файлом переменных окружения.

> **NB**
>
> Текущий файл окружения, подгруженный для чтения / редактирования и корневой файл окружения `.env` могут быть разными, но сохранение всегда производится в корневой файл, указанный при инициализации экземпляра менеджера. При регистрации в рамках поставщика службы использован шаблон Одиночка (*Singleton*).

Подключение
-----------

[](#подключение)

Для добавления зависимости в проект на Laravel, используйте менеджер пакетов Composer:

```
composer require russsiq/laravel-env-manager
```

Если в вашем приложении включен отказ от обнаружения пакетов в директиве `dont-discover` в разделе `extra` файла `composer.json`, то необходимо самостоятельно добавить следующее в файле `config/app.php`:

- Провайдер услуг в раздел `providers`:

```
Russsiq\EnvManager\EnvManagerServiceProvider::class,
```

- Псевдоним класса (Facade) в раздел `aliases`:

```
'EnvManager' => Russsiq\EnvManager\Support\Facades\EnvManager::class,
```

Использование
-------------

[](#использование)

### Методы

[](#методы)

Все публичные методы доступны через фасад `EnvManager`:

```
EnvManager::someMethod(example $someParam);
```

Список доступных публичных методов:

- [filePath](#method-filePath)
- [setFilePath](#method-setFilePath)
- [resetFilePath](#method-resetFilePath)
- [fileExists](#method-fileExists)
- [has](#method-has)
- [get](#method-get)
- [set](#method-set)
- [setMany](#method-setMany)
- [save](#method-save)
- [newFromPath](#method-newFromPath)
- [withNewAppKey](#method-withNewAppKey)

##### `filePath(): string`

[](#filepath-string)

Получить полный путь к текущему файлу окружения.

##### `setFilePath(string $filePath): self`

[](#setfilepathstring-filepath-self)

Установить полный путь к текущему файлу окружения.

##### `resetFilePath(): self`

[](#resetfilepath-self)

Сбросить полный путь к текущему файлу окружения.

##### `fileExists(): bool`

[](#fileexists-bool)

Проверить физическое существование текущего файла окружения.

##### `has(string $name): bool`

[](#hasstring-name-bool)

Проверить существование значения для указанной переменной окружения.

##### `get(string $name, $default = null): ?string`

[](#getstring-name-default--null-string)

Получить значение для указанной переменной окружения.

##### `set(string $name, $value): self`

[](#setstring-name-value-self)

Установить значение для переменной окружения.

##### `setMany(array $data): self`

[](#setmanyarray-data-self)

Установить значения для переменных окружения.

##### `save(): bool`

[](#save-bool)

Сохранить файл окружения.

##### `newFromPath(string $filePath): self`

[](#newfrompathstring-filepath-self)

Создать файл окружения путем копирования содержимого файла по указанному полному пути. Полная перезагрузка переменных окружения.

##### `withNewAppKey(): self`

[](#withnewappkey-self)

Создать новый ключ приложения.

### Пример использования

[](#пример-использования)

```
use Russsiq\EnvManager\Facades\EnvManager;

// Если файл не существует.
if (! EnvManager::fileExists()) {

    // Создаем новый файл из образца.
    EnvManager::newFromPath(base_path('.env.example'))
        // Попутно генерируем ключ для приложения.
        ->withNewAppKey()
        // Устанавливаем необходимые значения.
        ->setMany([
            'APP_NAME' => 'Example site',
            'APP_LOCALE' => 'ru',
            'APP_URL' => url('/'),
            'MAIL_FROM_ADDRESS' => 'from@example.com',
            'MAIL_FROM_NAME' => 'Example',
        ])
        // Сохраняем новый файл в корне как `.env`.
        ->save();
}

// Распечатаем для примера
dump(EnvManager::get('APP_NAME')); // -> `Example site`
```

Тестирование
------------

[](#тестирование)

Для запуска тестов используйте команду:

```
composer run-script test
```

Для запуска тестов и формирования agile-документации, генерируемой в HTML-формате и записываемой в файл [tests/testdox.html](tests/testdox.html), используйте команду:

```
composer run-script testdox
```

Удаление пакета
---------------

[](#удаление-пакета)

Для удаления пакета из вашего проекта на Laravel используйте команду:

```
composer remove russsiq/laravel-env-manager
```

Лицензия
--------

[](#лицензия)

`laravel-env-manager` – программное обеспечение с открытым исходным кодом, распространяющееся по лицензии [MIT](LICENSE).

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~39 days

Recently: every ~73 days

Total

21

Last Release

1482d ago

PHP version history (7 changes)0.0.1PHP &gt;=7.2.0

0.1.1PHP &gt;=7.2.5

0.2.3PHP &gt;=7.3.0

0.3PHP ^7.3|^8.0

0.4.0PHP ^8.0

0.5.0PHP 8.0.\*

0.6.0PHP 8.1.\*

### Community

Maintainers

![](https://www.gravatar.com/avatar/128e56a6429fdc3f0bedabc7d9a353d68429d5219c33f87633e3ef21122d7b6e?d=identicon)[russsiq](/maintainers/russsiq)

---

Top Contributors

[![russsiq](https://avatars.githubusercontent.com/u/11920039?v=4)](https://github.com/russsiq "russsiq (148 commits)")

---

Tags

environment-variableslaravellaravelenvironment-file

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/russsiq-laravel-env-manager/health.svg)

```
[![Health](https://phpackages.com/badges/russsiq-laravel-env-manager/health.svg)](https://phpackages.com/packages/russsiq-laravel-env-manager)
```

###  Alternatives

[barryvdh/laravel-ide-helper

Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.

14.9k123.0M687](/packages/barryvdh-laravel-ide-helper)[interaction-design-foundation/laravel-geoip

Support for multiple Geographical Location services.

17221.0k3](/packages/interaction-design-foundation-laravel-geoip)[nedwors/navigator

A Laravel package to ease defining navigation menus

433.1k](/packages/nedwors-navigator)[xefi/faker-php-laravel

Faker php integration with laravel

1915.1k](/packages/xefi-faker-php-laravel)[dcblogdev/laravel-junie

Install pre-configured guides for Jetbrains Junie

392.5k](/packages/dcblogdev-laravel-junie)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
