From 301d9ce9902a35fb8015805882723ab382f30ef4 Mon Sep 17 00:00:00 2001 From: Tristan Darricau Date: Fri, 27 Jun 2014 19:39:47 +0200 Subject: [ticket/12775] Add a config.php class (and service) PHPBB3-12775 --- phpBB/phpbb/config_php.php | 77 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 phpBB/phpbb/config_php.php (limited to 'phpBB/phpbb/config_php.php') diff --git a/phpBB/phpbb/config_php.php b/phpBB/phpbb/config_php.php new file mode 100644 index 0000000000..a92950909d --- /dev/null +++ b/phpBB/phpbb/config_php.php @@ -0,0 +1,77 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file. +* +*/ + +namespace phpbb; + +class config_php +{ + /** @var string phpBB Root Path */ + protected $phpbb_root_path; + + /** @var string php file extension */ + protected $php_ext; + + /** + * Indicates if the php config file has been loaded. + * + * @var bool + */ + protected $config_loaded = false; + + /** + * The content of the php config file + * + * @var array + */ + protected $config_data = array(); + + /** + * Constructor + * + * @param string $phpbb_root_path Path to the phpbb includes directory. + * @param string $php_ext php file extension + */ + function __construct($phpbb_root_path, $php_ext) + { + $this->phpbb_root_path = $phpbb_root_path; + $this->php_ext = $php_ext; + } + + /** + * Load the config file, store the information and return them + * + * @return bool|array Return the content of the config file or false if the file does not exists. + */ + public function load_config_file() + { + if (!$this->config_loaded) + { + if (file_exists($this->phpbb_root_path . 'config.' . $this->php_ext)) + { + $x7eeee37ce4d5f1ce4d968ed8fdd9bcbb = null; + $x7eeee37ce4d5f1ce4d968ed8fdd9bcbb = get_defined_vars(); + + require($this->phpbb_root_path . 'config.' . $this->php_ext); + $this->config_data = array_diff_key(get_defined_vars(), $x7eeee37ce4d5f1ce4d968ed8fdd9bcbb); + + $this->config_loaded = true; + } + else + { + return false; + } + } + + return $this->config_data; + } +} -- cgit v1.2.1