0,0 → 1,57 |
<?php |
|
/** |
* Config class. |
* |
* @author Tamlyn Rhodes <tam at zenology dot co dot uk> |
* @license http://opensource.org/licenses/gpl-license.php GNU General Public License |
* @copyright (c)2003-2005 Tamlyn Rhodes |
* @version $Id: config.class.php,v 1.8 2005/11/30 23:02:18 tamlyn Exp $ |
*/ |
|
/** |
* Reads configuration data from data/singapore.ini and stores the values |
* as properties of itself. |
* |
* @package singapore |
* @author Tamlyn Rhodes <tam at zenology dot co dot uk> |
* @copyright (c)2003, 2004 Tamlyn Rhodes |
*/ |
class sgConfig |
{ |
|
/** |
* Implements the Singleton design pattern by always returning a reference |
* to the same sgConfig object. Use instead of 'new'. |
*/ |
function &getInstance() |
{ |
static $instance; |
if(!is_object($instance)) |
//note that the new config object is NOT assigned by reference as |
//references are not stored in static variables (don't ask me...) |
$instance = new sgConfig(); |
return $instance; |
} |
|
/** |
* Parses an ini file for configuration directives and imports the values |
* into the current object overwriting any previous values. |
* @param string relative or absolute path to the ini file to load |
* @return boolean true on success; false otherwise |
*/ |
function loadConfig($configFilePath) |
{ |
if(!file_exists($configFilePath)) return false; |
|
//get values from ini file |
$ini_values = parse_ini_file($configFilePath); |
|
//import values into object scope |
foreach($ini_values as $key => $value) $this->$key = $value; |
|
return true; |
} |
} |
|
?> |