Commit 8356151f authored by Taylor Otwell's avatar Taylor Otwell

added support for environment configuration files.

parent 2c774adb
local/*
staging/*
\ No newline at end of file
......@@ -15,8 +15,9 @@
define('BASE_PATH', realpath('../').'/');
define('APP_PATH', realpath('../application').'/');
define('SYS_PATH', realpath('../system').'/');
define('PUBLIC_PATH', realpath(__DIR__.'/'));
define('CONFIG_PATH', APP_PATH.'config/');
define('PACKAGE_PATH', APP_PATH.'packages/');
define('PUBLIC_PATH', realpath(__DIR__.'/'));
// --------------------------------------------------------------
// Define the PHP file extension.
......
......@@ -95,17 +95,24 @@ class Config {
/**
* Load all of the configuration items from a file.
*
* If it exists, the configuration file in the application/config directory will be loaded first.
* Any environment specific configuration files will be merged with the root file.
*
* @param string $file
* @return void
*/
public static function load($file)
{
$directory = (isset($_SERVER['LARAVEL_ENV'])) ? $_SERVER['LARAVEL_ENV'].'/' : '';
if (array_key_exists($file, static::$items)) return;
$config = (file_exists($path = CONFIG_PATH.$file.EXT)) ? require $path : array();
if ( ! array_key_exists($file, static::$items) and file_exists($path = APP_PATH.'config/'.$directory.$file.EXT))
if (isset($_SERVER['LARAVEL_ENV']) and file_exists($path = CONFIG_PATH.$_SERVER['LARAVEL_ENV'].'/'.$file.EXT))
{
static::$items[$file] = require $path;
$config = array_merge($config, require $path);
}
return static::$items[$file] = $config;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment