tiny-blocks / environment-variable
Provides a simple and flexible solution for managing environment variables, with easy access, type conversions, and validation handling.
Requires
- php: ^8.3
Requires (Dev)
- dg/bypass-finals: ^1.8
- infection/infection: ^0
- phpmd/phpmd: ^2.15
- phpstan/phpstan: ^1
- phpunit/phpunit: ^11
- squizlabs/php_codesniffer: ^3
README
Overview
Provides a simple and flexible solution for managing environment variables, with easy access, type conversions, and validation handling.
Installation
composer require tiny-blocks/environment-variable
How to use
Creating an environment variable
To create and work with environment variables, use the from
method to get an instance of the environment variable.
EnvironmentVariable::from(name: 'MY_VAR');
To retrieve an environment variable with the option of providing a default value in case the variable does not exist,
use the fromOrDefault
method.
If the environment variable is not found, the method will return the provided default value instead of throwing an exception.
EnvironmentVariable::fromOrDefault(name: 'MY_VAR', defaultValueIfNotFound: 'default_value');
Conversions
Once you have an instance of the environment variable, you can convert its value into various types.
Convert to string
To convert the environment variable to a string.
$environmentVariable = EnvironmentVariable::from(name: 'MY_VAR'); $environmentVariable->toString();
Convert to integer
To convert the environment variable to an integer.
$environmentVariable = EnvironmentVariable::from(name: 'MY_VAR'); $environmentVariable->toInteger();
Convert to boolean
To convert the environment variable to a boolean.
$environmentVariable = EnvironmentVariable::from(name: 'MY_VAR'); $environmentVariable->toBoolean();
Check if the environment variable has a value
Checks if the environment variable has a value. Values like false
, 0
, and -1
are valid and non-empty.
$environmentVariable = EnvironmentVariable::from(name: 'MY_VAR'); $environmentVariable->hasValue();
License
Environment variable is licensed under MIT.
Contributing
Please follow the contributing guidelines to contribute to the project.