Download the PHP package enjoys/dotenv without Composer

On this page you can find all versions of the php package enjoys/dotenv. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package dotenv

build Scrutinizer Code Quality Code Coverage Mutation testing badge

Парсер .env файлов.

Загружаются .env.dist, .env и остальные файлы в зависимости от APP_ENV. Например, если APP_ENV=test, будет попытка загрузить .env.test

Приоритет конфигурационных файлов

Установка

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

Формат .env файлов

Дополнительные возможности

Type Casting (приведение типов)

Все значения в .env файле являются строками (string), но иногда было бы хорошо привести значение к соответствующему типу. Это возможно, установив свойство $castType в true с помощью метода enableCastType().

...или с помощью флага Dotenv::CAST_TYPE_ENV_VALUE

Доступные флаги

Ниже примеры как будут кастоваться переменные

Важное примечание

НЕ РЕКОМЕНДУЕТСЯ использовать флаг Dotenv::CAST_TYPE_ENV_VALUE или enableCastType().

_Хотя автоматическое приведение типов может быть удобным, его использование напрямую через $_ENV может быть неочевидным для других разработчиков и усложняет отладку. Значения, приведённые к типам, будут доступны только в рамках текущего PHP-процесса, где была использована эта библиотека._

Критически важно понимать_, что при использовании функции getenv() (которая часто используется для чтения переменных окружения) всегда возвращаются строковые значения, даже если тип был приведён на уровне парсера и сохранён в $_ENV. Это может привести к неожиданным результатам и ошибкам, если код использует смешанный доступ к переменным через $_ENV и getenv()._

Также эта функция замедляет парсинг переменных, что особенно заметно на больших объёмах данных.

_Для более предсказуемого и согласованного поведения рекомендуется использовать функцию env(). Она предоставляет те же возможности по приведению типов, но делает это явно в момент обращения к значению. Это делает код читаемым и предотвращает ошибки, связанные с неявным преобразованием типов и различиями в способах хранения переменных (в $_ENV, getenv() или $_SERVER)._

Значения переменных по-умолчанию

Если переменная не установлена, можно определить значения по-умолчанию. Есть два варианта как это сделать:

  1. ${VAR:-default} - при этом варианте, если переменная не будет установлена, вернется значение после знака :-, переменная при этом также останется не установленной, в противном случае будет возвращено значение переменной.
  2. ${VAR:=default} - при этом варианте, если переменная не будет установлена, вернется значение после знака := и установить переменную с этим значением, в противном случае будет возвращено значение переменной.

Внимание! Если переменная не установлена, и не переданы значения по-умолчанию, будет возвращена пустая строка.

Чтобы вызвать ошибку при таком сценарии, можно указать после наименования переменной :?, или :?message. И в случае если переменная не была установлена, будет выброшено исключение \Enjoys\Dotenv\Exception\InvalidArgumentException

Например:

Доступные флаги

Флаги можно комбинировать через |, например Dotenv::CAST_TYPE_ENV_VALUE|Dotenv::POPULATE_PUTENV

Функция env()

Удобная функция для работы с переменными окружения с поддержкой преобразования типов, валидации и гибкой обработки значений в callback функции.

Базовое использование

Преобразование типов

Автоматическое преобразование типов

Функция использует ValueTypeCasting::castType() для автоматического преобразования типов. См. Type Casting (приведение типов)

Специальные префиксы для явного указания типов

Автоматическое преобразование без префиксов

Преобразование значений

Валидация значений

Получение сырых значений (RAW)

Практические примеры

Конфигурация приложения:

Особенности работы

Приоритеты получения значений

Функция проверяет переменные в следующем порядке:

  1. getenv() - системные переменные окружения
  2. $_ENV - массив переменных окружения PHP
  3. Значение по умолчанию

All versions of dotenv with dependencies

PHP Build Version
Package Version
Requires php Version 8.0 - 8.5
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package enjoys/dotenv contains the following files

Loading the files please wait ...