reasonableframework/system/config.php

78 lines
1.5 KiB
PHP

<?php
/**
* @file config.php
* @date 2018-04-13
* @author Go Namhyeon <gnh1201@gmail.com>
* @brief Configuration module
*/
if(!check_valid_function("read_config")) {
function read_config() {
$config = array();
$files = retrieve_storage_files("config");
foreach($files as $file) {
$ini = array();
if(check_file_extension($file, "ini.php", array("multiple" => true))) {
$str = include($file);
$ini = parse_ini_string($str);
} elseif(check_file_extension($file, "ini")) {
$ini = parse_ini_file($file);
}
foreach($ini as $k=>$v) {
$config[$k] = $v;
}
}
return $config;
}
}
if(!check_valid_function("get_config")) {
function get_config() {
$config = get_scope("config");
if(!is_array($config)) {
set_scope("config", read_config());
}
return get_scope("config");
}
}
if(!check_valid_function("get_config_value")) {
function get_config_value($key) {
$config = get_config();
$config_value = "";
if(!array_key_empty($key, $config)) {
$config_value = $config[$key];
}
return $config_value;
}
}
if(!check_valid_function("get_current_datetime")) {
function get_current_datetime() {
$datetime = false;
$config = get_config();
$timestamp = time();
$timeformat = get_value_in_array("timeformat", $config, "Y-m-d H:i:s");
if(!array_key_empty("timeserver", $config)) {
if(loadHelper("timetool")) {
$timestamp = get_server_time($config['timeserver']);
}
}
$datetime = date($timeformat, $timestamp);
return $datetime;
}
}
set_scope("config", read_config());