Skip to content
/ env Public

Simple library to read environment variables and convert to simple types.

License

Notifications You must be signed in to change notification settings

oscarotero/env

Repository files navigation

env

Software License Build Status Quality Score Total Downloads

Simple library to get environment variables converted to simple types.

Installation

This package is installable and autoloadable via Composer as oscarotero/env.

$ composer require oscarotero/env

Example

// Using getenv function:
var_dump(getenv('FOO')); //string(5) "false"

// Using Env:
var_dump(Env::get('FOO')); //bool(false)

Available conversions

  • "false" is converted to boolean false
  • "true" is converted to boolean true
  • "null" is converted to null
  • If the string contains only numbers is converted to an integer
  • If the string has quotes, remove them

Options

To configure the conversion, you can use the following constants (all enabled by default):

  • Env::CONVERT_BOOL To convert boolean values
  • Env::CONVERT_NULL To convert null values
  • Env::CONVERT_INT To convert integer values
  • Env::STRIP_QUOTES To remove the quotes of the strings

There's also additional settings that you can enable (they're disabled by default)

  • Env::USE_ENV_ARRAY To get the values from $_ENV, instead getenv().
  • Env::LOCAL_FIRST To get first the values of locally-set environment variables.
//Convert booleans and null, but not integers or strip quotes
Env::$options = Env::CONVERT_BOOL | Env::CONVERT_NULL;

//Add one more option
Env::$options |= Env::USE_ENV_ARRAY;

//Remove one option
Env::$options ^= Env::CONVERT_NULL;

Default value

By default, if the value does not exist, returns null, but you can change for any other value:

Env::$default = false;

The env() function

If you don't want to complicate with classes and namespaces, you can use the env() function, like in Laravel or other libraries:

Env::init(); //expose the function to globals

//now you can use it

var_dump(env('FOO'));

Please see CHANGELOG for more information about recent changes.

The MIT License (MIT). Please see LICENSE for more information.

About

Simple library to read environment variables and convert to simple types.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages