-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEnv.php
More file actions
32 lines (28 loc) · 959 Bytes
/
Env.php
File metadata and controls
32 lines (28 loc) · 959 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
namespace Abdslam01\MiniFrameworkCore;
use Exception;
/**
* Env
*/
class Env{
/**
* load
*
* @return void
*/
public static function load(){
if(!file_exists($envFilePath=__DIR__."\\..\\.env"))
throw new Exception(".env file not found");
$content = file_get_contents($envFilePath);
$content = preg_replace("#([\#;].*([\n\r]+|$))#", "", $content); // Delete Comments [comment starts by either: # or ;]
$content = preg_replace("#[\n\r]+#", "\n", $content); // Delete empty lines
$content = str_replace("=", "= ", $content); // To prevent function explode to return one element in array
foreach(explode("\n", $content) as $line){
if(strpos($line, "=")===false)
continue;
[$key, $value] = explode("=", $line, 2);
if($key && isset($value))
$_ENV["ENV"][trim($key)] = trim($value);
}
}
}