Readme and license
This commit is contained in:
parent
8de9eaf5d8
commit
25fc8dbc33
4 changed files with 88 additions and 0 deletions
21
LICENSE
Normal file
21
LICENSE
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2018 Alexander Kiryukhin
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
66
README.md
Normal file
66
README.md
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
# Dotenv
|
||||||
|
|
||||||
|
[![Build Status](https://travis-ci.org/NeonXP/Dotenv.svg?branch=master)](https://travis-ci.org/NeonXP/Dotenv)
|
||||||
|
[![Coveralls github](https://img.shields.io/coveralls/github/NeonXP/Dotenv.svg)]()
|
||||||
|
[![GitHub issues](https://img.shields.io/github/issues/neonxp/dotenv.svg)](https://github.com/neonxp/dotenv/issues)
|
||||||
|
[![GitHub forks](https://img.shields.io/github/forks/neonxp/dotenv.svg)](https://github.com/neonxp/dotenv/network)
|
||||||
|
[![GitHub stars](https://img.shields.io/github/stars/neonxp/dotenv.svg)](https://github.com/neonxp/dotenv/stargazers)
|
||||||
|
[![GitHub license](https://img.shields.io/github/license/neonxp/dotenv.svg)](https://github.com/neonxp/dotenv)
|
||||||
|
|
||||||
|
## What is it?
|
||||||
|
|
||||||
|
Small library, that automaticaly loads `.env` (or any other) file to applications environment.
|
||||||
|
|
||||||
|
## Why not XXX?
|
||||||
|
|
||||||
|
Because this library is pretty simple, without external dependencies and highly customizable.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```
|
||||||
|
composer require neonxp/dotenv
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Basic usage:
|
||||||
|
|
||||||
|
```php
|
||||||
|
use NeonXP\Dotenv\Dotenv;
|
||||||
|
|
||||||
|
$dotenv = new Dotenv();
|
||||||
|
$dotenv->load(); // You can specify file to load at first argument
|
||||||
|
|
||||||
|
print $dotenv->get('KEY', 'default') . PHP_EOL;
|
||||||
|
print $dotenv['KEY'] . PHP_EOL;
|
||||||
|
foreach ($dotenv as $key => $value) {
|
||||||
|
print "$key = $value" . PHP_EOL;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## .env file syntax
|
||||||
|
|
||||||
|
Here examples of syntax:
|
||||||
|
|
||||||
|
```
|
||||||
|
# This is a comment
|
||||||
|
|
||||||
|
# Empty lines also ignored
|
||||||
|
export KEY1=VALUE1
|
||||||
|
KEY2 = VALUE2 # Inline comment
|
||||||
|
KEY3 = 'VALUE3 # This is not comment'
|
||||||
|
KEY4 = "VALUE4 # And this value too"
|
||||||
|
KEY5 = ${KEY1} -> ${KEY2} # Compilled from another variables
|
||||||
|
```
|
||||||
|
|
||||||
|
and we will get:
|
||||||
|
|
||||||
|
```php
|
||||||
|
[
|
||||||
|
'KEY1' => 'VALUE1',
|
||||||
|
'KEY2' => 'VALUE2',
|
||||||
|
'KEY3' => 'VALUE3 # This is not comment',
|
||||||
|
'KEY4' => 'VALUE4 # And this value too',
|
||||||
|
'KEY5' => 'VALUE1 -> VALUE2',
|
||||||
|
]
|
||||||
|
```
|
|
@ -80,6 +80,7 @@ class Dotenv implements \ArrayAccess, \IteratorAggregate
|
||||||
);
|
);
|
||||||
foreach ($this->loadedValues as $key => $value) {
|
foreach ($this->loadedValues as $key => $value) {
|
||||||
$_ENV[$key] = $value;
|
$_ENV[$key] = $value;
|
||||||
|
$_SERVER[$key] = $value;
|
||||||
putenv($key . "=" . $value);
|
putenv($key . "=" . $value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue