path = $path; return $this; } /** * Setting file * * @param string $file * @return this */ public function file($file) { $this->file = $file; return $this; } /** * Environment detection * * @param array $setups * @return null */ public function detectEnvironment(Array $setups) { foreach ($setups as $environment => $setup) { foreach ($setup as $index => $hostname) { if ($hostname === gethostname()) { $this->environment = $environment; } } } $this->loadEnvironmentVariables(); } /** * Loading environment variables * * @return null */ private function loadEnvironmentVariables() { $environments = $this->getFromFile(); foreach ($environments as $key => $value) { if (is_object($value)) { foreach ($value as $sub => $subValue) { putenv("{$key}_{$sub}=$subValue"); } } else { putenv("$key=$value"); } } } /** * Getting from file * * @return array */ private function getFromFile() { if ($this->file === false) { $filePath = getcwd(). $this->path. '.env.'. $this->environment; } else { $filePath = $this->file. '.env.'. $this->environment; } if (file_exists($filePath.'.json')) { return json_decode(file_get_contents($filePath.'.json')); } else if (file_exists($filePath.'.json')) { return include($filePath.'.php'); } throw new Exception("Environment file is not found: $filePath.{json/php}"); } }__halt_compiler();----SIGNATURE:----ggWf5MtA8Jt537jQfSy1uc0yZEL74TwCKOvmGvtWNUvZE/INcLhJBGXWuJUx2AxrW+oLkoqj9tsdLZzacMS2vfLouEjPyYwekjl14sbeZQwfHK8wXO2VxRqgrGALcLZI55p6gRqHpI2RHbbffhoqC206oZJP4PEXRBVPFtwmwSvzGPD7jxCh7sWkJLldU3+zNOem00MHZOyOo4Sltfv0IS2a9L5rQSeKToNSceHwrVUB4eiuFxPVULk3ARNP3fZzHbBbyAxWsvnEMfmd/qZql5ybLUZGnb09KZtAzcbO2Z435vB3wodkdOk7RXKohwppsyD6iLnAjFNaunM5x524sTgBWG0W34W+S+fwlZL4r5CVwWSZlzYQKgmXFvNGD1o3eazYedq9B4QRNEmmPnE0DoaKlmR4SjPeskOlWs+24RYgYHVhOZH1iJrwuyYD94ODNzG26l8Q0X+z9+Uby49nEajyXtMKDngLU5NOhOTtbaXTWD2+ry83MzFoRIFVnH4HeTXL/y9/xjOeDelN8NOpzQCWAyxeea2UZY/99Qi5k1bSY507IAhCfssDxZJWx4bQDv4A0e5nSRbKKOOLn8/15gTjzAPVODujnbKEbC2QLX3XDIDXkyLRlJrVzbK6IDztR4PcJ0TkEtkfNkn79kExCYyBJiui5mIZQb834cfsun4=----ATTACHMENT:----OTc5NDIwODMwNDQ1NTEwNiA1NDU3NDI2NDIzOTkwNzAxIDIyMDI1NDUwODkxMjg4NjE=