Download the PHP package rammewerk/environment without Composer
On this page you can find all versions of the php package rammewerk/environment. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rammewerk/environment
More information about rammewerk/environment
Files in rammewerk/environment
Package environment
Short Description A simple and fast environment variable handler for PHP projects.
License MIT
Homepage https://rammewerk.com
Informations about the package environment
Rammewerk Environment
A fast, typed, and opinionated environment variable handler designed for simplicity.
This package provides a streamlined, dependency-free approach to handling .env
files in your project, offering both
speed and type safety. Unlike other solutions, Rammewerk Environment focuses on performance and ensures minimal exposure
risks by not injecting variables into $_ENV.
Why choose Rammewerk Environment?
- Blazing fast parsing of .env files, suitable for high-performance applications.
- Type-safe outputs: Automatically converts values to proper types like bool, int, null, or even array.
- No hidden magic: Variables are not automatically added to global environment arrays.
- Dependency-free: Minimal footprint for lightweight projects.
- Extensible validation: Easily validate required variables using closures.
- Multiple file support: Load and manage multiple .env files with ease.
Note: This package supports a simplified .env format, with specific rules for variable names, comments, and values. See Limitations for details.
Getting Started
Support for multiple .env files
You can add multiple environment files or create new variables on the fly.
A file does not necessarily need to be .env. For instance, a file.txt will also work as long as it is correctly formatted.
Validating environment variables
Limitations
This is a simple env parser. You will need to format your env-files accordingly:
Variable names
Environment variable names must consist solely of letters, digits, and the underscore ( _ ) and must not begin with a digit.
Comments
Comments are only allowed on new lines, never on the same line as variables.
Variable values
Values can be quoted.
Values will be trimmed and converted to types
Tips
A new Environment()
will return a new instance of the class. So, if you use a dependency injection container or
similar, consider making the Environment class a shared instance. Or make your own singleton wrapper.
Typed getters
You can use typed getters to get the value of a key as a specific type. For example:
Contribution
If you have any issues or would like to contribute to the development of this library, feel free to open an issue or pull request.
License
The Rammewerk Container is open-sourced software licensed under the MIT license.