maks / envparser
Requires
- php: >=5.5.0
This package is not auto-updated.
Last update: 2025-07-08 15:38:21 UTC
README
Environment Parser
Установка
Используйте команду
composer require maks/envparser:*
или добавьте
"maks/envparser": "*"
в секцию require вашего composer.json
файла.
Команды
Загрузить *.env из домашней директории:
MyENV::load();
Получить переменные окружения файла Env.env:
MyENV::get('Env.env');
или
MyENV::get('Env');
Регистр неважен.
Доступ к определенному значению осуществляется как в ассоциативном массиве - с использованием ключа
MyENV::get('Env')['key'];
Показать доступные файлы *.env
MyENV::getAllEnv();
Изменить разделитель ключ - значение:
MyENV::$optionsKeyValueDelimiter = "=";
Изменить символ начала комментария:
MyENV::$optionsComment = "#";
Включить/отключить преобразование типов значений:
MyENV::$optionsChangeValuesType = true/false;
Синтаксис
По-умолчанию комментарии определяются символом '#'. Могут быть как на отдельной строке, так и после значения
test.env
# This is comment
Value = 2 #This is comment too
Перед началом комментария обязательно должен стоять пробел
test.env
Value2 = 2# This is value
Если обнаружена незакрытая кавычка - комментарий становится значением
New = "value # This is value again
При загрузке файла пропускаются пустые строки, строки с комментариями и строки без разделителя 'ключ-значение'
test.env
Valid = strings
This line will be skipped
#This comment will be skipped
Преоразование типов
test.env
This_is_integer = 123
This_is_float = 32.35
This_is_bool = true
This_is_bool = false
Регистр для булевого типа имеет значение
This_is_string = False
Для значения null тоже
This_is_null = NULL
This_is_string = false
Массив идентифицируется квадратными скобками. Значения массива являются строками. Вложенные массивы не поддерживаются и также являются строками.
This_is_array = [1, 2, 3, 4] # Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
Array_again = [[1, 2], 3, 4] # Array ( [0] => [1 [1] => 2] [2] => 3 [3] => 4 ) )
Все остальные случаи будут преобразованы в строку.
При наличии одинаковых ключей, сохраняется значение последнего