Downloads
Stars
Version
Данный менеджер используется только для физического взаимодействия с файлом переменных окружения.
NB
Текущий файл окружения, подгруженный для чтения / редактирования и корневой файл окружения
.env
могут быть разными, но сохранение всегда производится в корневой файл, указанный при инициализации экземпляра менеджера. При регистрации в рамках поставщика службы использован шаблон Одиночка (Singleton).
Для добавления зависимости в проект на Laravel, используйте менеджер пакетов Composer:
composer require russsiq/laravel-env-manager
Если в вашем приложении включен отказ от обнаружения пакетов в директиве dont-discover
в разделе extra
файла composer.json
, то необходимо самостоятельно добавить следующее в файле config/app.php
:
providers
:Russsiq\EnvManager\EnvManagerServiceProvider::class,
aliases
:'EnvManager' => Russsiq\EnvManager\Support\Facades\EnvManager::class,
Все публичные методы доступны через фасад EnvManager
:
EnvManager::someMethod(example $someParam);
Список доступных публичных методов:
filePath(): string
Получить полный путь к текущему файлу окружения.
setFilePath(string $filePath): self
Установить полный путь к текущему файлу окружения.
resetFilePath(): self
Сбросить полный путь к текущему файлу окружения.
fileExists(): bool
Проверить физическое существование текущего файла окружения.
has(string $name): bool
Проверить существование значения для указанной переменной окружения.
get(string $name, $default = null): ?string
Получить значение для указанной переменной окружения.
set(string $name, $value): self
Установить значение для переменной окружения.
setMany(array $data): self
Установить значения для переменных окружения.
save(): bool
Сохранить файл окружения.
newFromPath(string $filePath): 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' => '[email protected]',
'MAIL_FROM_NAME' => 'Example',
])
// Сохраняем новый файл в корне как `.env`.
->save();
}
// Распечатаем для примера
dump(EnvManager::get('APP_NAME')); // -> `Example site`
Для запуска тестов используйте команду:
composer run-script test
Для запуска тестов и формирования agile-документации, генерируемой в HTML-формате и записываемой в файл tests/testdox.html, используйте команду:
composer run-script testdox
Для удаления пакета из вашего проекта на Laravel используйте команду:
composer remove russsiq/laravel-env-manager
laravel-env-manager
– программное обеспечение с открытым исходным кодом, распространяющееся по лицензии MIT.